Funktion sin() i Perl

I programmeringssproget Perl har en indbygget funktion sin(). Denne funktion returnerer værdien af den trigonometriske funktion sinus af dit argument.

Her er et eksempel:

▶ Run
#!/usr/bin/perl

print sin( -3.14159265358979 / 2 );

Dette program vil vise antallet -1. Sinus -π/2 er -1, dette er, hvad der vises af programmet.

Argumenter

my $value = sin($rad);

Argument Perl funktioner sin() er et nummer i radianer.

Hvis funktioner sin() for at bestå en enkelt argument, vil funktionen virke på det.

Hvis du ikke kan passere ethvert argument, vil funktionen virke med standard variable $_. Her er et eksempel (programmet viser antallet 1):

▶ Run
#!/usr/bin/perl

$_ = 3.14159265358979 / 2;

print sin;

Hvis funktioner sin() pass mere end ét argument, vil det fejl:

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

Return værdi

Funktion sin() altid returnerer et tal. Antallet af mulige værdier er -1, til at 1.

Eksempel på returnerede værdi: 0.0998334166468282 (denne værdi er, når du bruger det argument, 0.1).

Arbejde med grader

Argumentet sin() er et nummer i radianer. Hvis du har brug for at beregne sinus af grader, skal de omregnes til radianer. Til at konvertere grader til radianer bruge formlen rad = degree * π/180.

Her er en prøve program der udskriver en tabel med grader, radianer, og den afgørende forhold:

▶ Run
#!/usr/bin/perl

use utf8;
use strict;
use warnings;
use feature qw(say);

use Math::Trig;

say 'deg      rad  sin(rad)';

for (my $degree = 0; $degree<=360; $degree += 15) {
    my $rad = $degree * pi() / 180;
    say sprintf '%3d  %0.5f  % 0.5f', $degree, $rad, sin($rad);
}

Programmet bruger et Perl-modul Math::Trig. Når forbindelsen bliver tilgængelig funktion pi(), der returnerer antallet π.

Her er resultatet af dette program:

deg      rad  sin(rad)
  0  0.00000   0.00000
 15  0.26180   0.25882
 30  0.52360   0.50000
 45  0.78540   0.70711
 60  1.04720   0.86603
 75  1.30900   0.96593
 90  1.57080   1.00000
105  1.83260   0.96593
120  2.09440   0.86603
135  2.35619   0.70711
150  2.61799   0.50000
165  2.87979   0.25882
180  3.14159   0.00000
195  3.40339  -0.25882
210  3.66519  -0.50000
225  3.92699  -0.70711
240  4.18879  -0.86603
255  4.45059  -0.96593
270  4.71239  -1.00000
285  4.97419  -0.96593
300  5.23599  -0.86603
315  5.49779  -0.70711
330  5.75959  -0.50000
345  6.02139  -0.25882
360  6.28319  -0.00000

Relaterede emner

Officiel dokumentation

Her er outputtet af kommandoen perldoc -f sin:

       sin EXPR
       sin     Returns the sine of EXPR (expressed in radians).  If EXPR is
               omitted, returns sine of $_.

               For the inverse sine operation, you may use the
               "Math::Trig::asin" function, or use this relation:

                   sub asin { atan2($_[0], sqrt(1 - $_[0] * $_[0])) }

Andre artikler