Som i Perl til at afrunde et tal til det nærmeste heltal

Opgave. I Perl, har programmet en variabel, som er et tal. Du er nødt til at runde det til nærmeste hele i den mindre side. I. e. i tilfælde af ikke-negative tal betyder du skal bare nødt til at afskære hele brøkdelen.

Her er nogle eksempler på værdier. Alle disse tal skal konverteres til et antal 10:

  • 10
  • 10.001
  • 10.4
  • 10.5
  • 10.99

Løsningen er at bruge funktionen floor

Den bedste måde at løse dette problem er at bruge funktionen floor fra biblioteket POSIX.

Bibliotek POSIX leveres med Perl, så hvis du har Perl, denne pakke er til rådighed for yderligere installere noget.

Her er en prøve på programmet:

▶ Run
#!/usr/bin/perl

use POSIX;

my $number = 10.3;

print floor($number);

Programmet vil vise nummer 10.

  • use POSIX; — forbundet biblioteket POSIX. Så snart vi er tilsluttet dette bibliotek, vi blev straks tilgængelige for et par funktioner, der er defineret i dette bibliotek.
  • my $number = 10.3; — opret en variabel $number og sætte antallet 10.3.
  • print floor($number); — Anvendt funktion floor og vise resultatet af sit arbejde.

Funktion floor (på engelsk dette ord er oversat som "sex") er temmelig standard. I mange programmeringssprog, der er en funktion med samme navn, og som fungerer nøjagtig den samme.

Ud over de funktioner, floor der er stadig en funktion af ceil ("loft"), som afrunder et tal til det nærmeste heltal i en stor måde.

I tilfælde af negative tal

Funktion floor for negative tal virker på samme måde som for positive tal — runder det tal til det nærmeste heltal.

Alle disse tal, når du bruger floor vil blive nummer -6:

  • -5.1
  • -5.5
  • -5.9
  • -6

Relaterede emner

Andre artikler