La funzione sqrt(x) in C++

Vediamo come implementare e utilizzare la funzione sqrt(x) in C++, la quale calcola la radice quadrata di un numero.

sqrt(x)

Dove x è il numero radicando. Può essere un valore numerico intero o in virgola mobile.

Questa funzione restituisce la radice quadrata del x.

Ricorda che in matematica, la radice quadrata di un numero \( x \) è un numero \( y \) tale che \( y^2 = x \).

In C++, questa funzione fa parte della libreria standard <cmath>.

Quindi, prima di tutto, includiamo la libreria necessaria:

#include <cmath>

Ora, possiamo usare la funzione sqrt() per calcolare la radice quadrata di un numero.

Ecco un esempio pratico di utilizzo.

#include <iostream>
#include <cmath>
  int main() {
  double numero = 9.0;
  double radice = sqrt(numero);
  std::cout << "La radice quadrata di " << numero << " è " << radice << std::endl;
  return 0;
}

Nel nostro esempio, calcoliamo la radice quadrata di 9.0, che è 3.0.

La radice quadrata di 9 è 3

Ma, cosa succede se proviamo a calcolare la radice quadrata di un numero negativo?

In matematica, la radice quadrata di un numero negativo non esiste nel campo dei numeri reali.

Tuttavia, in C++, se provi a calcolare la radice quadrata di un numero negativo usando sqrt(), il risultato sarà NaN (Not a Number).

#include <iostream>
#include <cmath>
int main() {
  double numeroNegativo = -9.0;
  double radice = sqrt(numeroNegativo);
  std::cout << "La radice quadrata di " << numeroNegativo << " è " << radice << std::endl;
  return 0;
}

Questo programma stampa NaN perché non possiamo avere una radice quadrata reale di un numero negativo.

La radice quadrata di -9 è -nan

Un buon modo di trattare questo problema è controllare se il numero è negativo prima di tentare di calcolarne la radice quadrata.

Ecco un esempio di come potresti farlo:

#include <iostream>
#include <cmath>
int main() {
   double numero = -9.0;
   if (numero < 0) {
     std::cout << "Numero negativo. Impossibile calcolare la radice quadrata." << std::endl;
   } else {
     double radice = sqrt(numero);
     std::cout << "La radice quadrata di " << numero << " è " << radice << std::endl;
   }
   return 0;
}

Questo programma controlla prima se il numero è negativo e, in tal caso, stampa un messaggio di errore. 

Numero negativo. Impossibile calcolare la radice quadrata.

Viceversa, se è un numero positivo o nullo, procede con il calcolo della radice quadrata.

 

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin