Funzione sqrt() in Perl

Nel linguaggio di programmazione Perl ci sono built-in funzione di sqrt(). Questa funzione restituisce la radice quadrata del suo argomento.

Ecco un esempio:

▶ Run
#!/usr/bin/perl

print( sqrt(2) );

Questo programma visualizza il numero di 1.4142135623731.

Argomenti

my $value = sqrt($number);

Se la funzione sqrt() passare un solo argomento, la funzione di lavorare con lui.

Se non trasmettere alcun argomento, la funzione sarà lavorare con una variabile $_. Ecco un esempio (il programma visualizzerà il numero di 2):

▶ Run
#!/usr/bin/perl

$_ = 4;

print( sqrt() );

Se la funzione sqrt() di trasferire più di un argomento, quello è un errore:

Too many arguments for sqrt at script.pl line 3, near "2) "
Execution of script.pl aborted due to compilation errors.

Il valore restituito

Se il programma non viene utilizzato il modulo Perl Math::Complex, il risultato del lavoro funzione sqrt() — e ' sempre il numero.

E se nel programma c'è un modulo Math::Complex, allora il risultato può essere l'ultimo carattere di una stringa in cui sarà lettera 'i', ad esempio '1.73205080756888i'.

Lavoro in caso di valore negativo l'argomento

Se il programma non viene utilizzato il modulo Perl Math::Complex e funzioni sqrt() trasmesso un valore negativo, allora sarà gettato un'eccezione e il programma completo:

▶ Run
#!/usr/bin/perl

print( sqrt(-9) );
Can't take sqrt of -9 at script.pl line 3.

Quando si utilizza il modulo Math::Complex funzione sqrt() funziona con valori negativi. Ecco un esempio di un programma che visualizza il testo 3i.

▶ Run
#!/usr/bin/perl

use Math::Complex;

print( sqrt(-9) );

La documentazione ufficiale di

Ecco l'output del comando perldoc -f sqrt:

       sqrt EXPR
       sqrt    Return the positive square root of EXPR.  If EXPR is omitted,
               uses $_.  Works only for non-negative operands unless you've
               loaded the "Math::Complex" module.

                   use Math::Complex;
                   print sqrt(-4);    # prints 2i

Altri articoli