ANJAN PURKAYASTHA wrote:
> Owen wrote:
>> ANJAN PURKAYASTHA wrote: 
>>>
>>> I would like to divide a floating point number into its whole and
>>> fractional parts.
>>> So,
>>> ($w, $f)= some_subroutine(12.735)
>>> assigns 12 to $w and 0.735 to $f.
>>>
>>> Any easy perlish way of doing this?
>>
>> Someone no doubt will have a one liner, but here is a logical way of
>> achieving the result
>>
>>
>> #!/usr/bin/perl -w
>>
>> use strict;
>>
>> my $nr = "12.75";
>>
>> my ( $whole, $part ) = ( int($nr), $nr - int($nr) );
>>
>> print "$whole   $part\n ";
>>
> thanks owen.
> after some research i was able to answer my own question.
> solution:
> 
> use POSIX;
> $n= 12.735;
> 
> $w= floor($n); # assigns the value 12 to $n.
> 
> $f= $n-$w; # this holds the fractional value.

use strict;
use warnings;

use POSIX qw/modf/;

my $n= 12.735;

my ($part, $whole) = modf $n;

print "$whole   $part\n";


HTH,

Rob


-- 
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to