{

# How do you round a floating point number in Perl with code example This tutorial explains multiple ways to round floating numbers in Perl.

## Perl Floating number round example

There are multiple ways we can round a float number Floating numbers can be rounded in two types.

• ceiling: a rounding number to a number greater than the current number. For example round of 2.6 is 3.

• Floor: rounding number to a number less than the current number. For example round of 2.6 is 2.

• using Math::round module

Math::round module provides extension functions for rounding numbers.

• First import all functions of the `Math::round` module
• call the round function with a given floating number
• Returns the roundest integer number
``````use Math::Round qw(:all);

my \$floatNumber= 123.12
my \$result = round( \$floatNumber );
print "\$result";
``````

Output:

``````123
``````
• use POSIX module POSIX module provides rounding utility functions
• ceil: return the rounded to a number greater than a given number.
• floor: Return the rounded to a number less than a given number.

Here is an example

``````use POSIX;
my \$floatNumber= 123.12;
my \$result = ceil( \$floatNumber );
my \$result1 = floor( \$floatNumber );

print "\$result\n";# 124
print "\$result1"; #123
``````

Output:

``````124
123
``````
• use the Math::BigFloat module

Math::BigFloat module provides various utility methods for number systems. First, create a number using BigFloat -> new method.

• Call the `bfround` function to return the nearest integer
• call the `bfloor` function to return the floor of a floating number
• call the `bceil` function to return the floor of a floating number

Here is an example

``````use Math::BigFloat;

my \$floatNumber= 123.12;
print Math::BigFloat->new(\$floatNumber)->bfround(1),"\n";#123
print Math::BigFloat->new(\$floatNumber)->bfloor(3),"\n"; #123
print Math::BigFloat->new(\$floatNumber)->bceil(3); #124
``````
• use the sprintf function

`sprintf` function converts given floating number with expression and does rounding number

``````my \$floatNumber= 123.12121;
my @result=sprintf "%.0f", \$floatNumber;
print "@result" #123
``````

## Perl Limit decimal places in floating numbers

This example limits the decimal places in a floating number. The `printf` function returns the floating number by limiting decimal places.

``````my \$floatNumber= 123.12121;
printf("%.2f\n",123.11111);
printf("%.2f\n",123.666);
printf("%.2f\n",111.61266);
``````

Output:

``````123.11
123.67
111.61
``````
Join 6,000 subscribers and get a daily digest of full stack tutorials delivered to your inbox directly.No spam ever. Unsubscribe any time.

Similar Posts
Subscribe
You'll get a notification every time a post gets published here.

Related posts