Question about floating point math w/perl

I am trying to use perl for numerical data reduction. I have three output

files which are of the same lenght, are composed of two rows of numbers,

and each have time as the first field. I open them, then do the following:

(open lines are of the form:

open( BRAD,"< BRAD.1" ) || die "can't open BRAD.1: $!\n";

)

while ( <PDEC> ) {

($time,$dec) = $_ =~ /^\s+(\.\w+E[+-]\w+)\s+(\w*\.\w+)/;

$tmp = <BRVL>;

($vel) = $tmp =~ /^\s+\.\w+E[+-]\w+\s+([-]*\w*\.\w+[-]*\w*)/;

$tmp = <BRAD>;

($rad) = $tmp =~ /^\s+\.\w+E[+-]\w+\s+(\w*\.\w+)/;

$integ = $dec*$vel/$rad^(3.*1.27-2.);

printf "%.3f %.3f\n",$time,$integ;

Quote:

}

I use PDEC to find the time, then ignore it in the next two matches; I then

need to calculate $integ, a quantity I will numerically integrate using a

fortran routine.

My problem:

$integ is an integer. In addition, when $vel is negative, $integ = 4294967292.

Is there a fix?

Thanks - feel free to reply to this group or to me via email.