#!/usr/bin/perl use strict; use warnings; my $space = '.' x 25; my ($int,$erwartet); foreach my $test ( -19854.94 - -3970.99 - -15883.95,'=0', .57 * 100,'=57', .58,'=0', 12.345,'=12', 57.00000000000000001,'=57', 0.000000000000001,'=0', 1.01205,'=1', -0.903,'=0', -1.9999999 + .000000099999999,'=-1' ) { if (substr ($test,0,1) eq '=') { $erwartet = substr($test,1); print "Erwartet '$erwartet'\n\n"; } else { $int = GUIfreund($test); print "\'$test\'".substr($space,0,25 - length ($test))."geINTet mit GUIfreund: \'$int\'".substr($space,0,25 - length ($int))."\n"; $int = integer($test); print "\'$test\'".substr($space,0,25 - length ($test))."geINTet mit Bianca : \'$int\'".substr($space,0,25 - length ($int))."\n"; } } ############################################################################### sub GUIfreund { sprintf('%.0f',$_[0]); } sub integer { my $wert = shift ( @_ ) || 0; if ($wert =~ /e\-\d+$/) { return 0; } if ($wert =~ /\./) { my $neu = ''; for (my $st = 0; $st < length($wert); $st ++) { if (substr($wert,$st,1) eq '.') { last; } else { $neu .= substr($wert,$st,1); } } $neu = 0 if $neu eq ''; $wert = $neu; $wert = 0 if $wert == -0; } return $wert; }