#!/usr/bin/perl -w use strict; my @input = ; chomp @input; my $largest_value = 0; my $second_value = 0; for (@input){ #$value = substr($input[$i], 0, 6); why? Perl can dwal with floating point numbers if($_ > $largest_value){ $second_value = $largest_value; $largest_value= $_; } elsif(($_ > $second_value) && ($_ < $largest_value)){ $second_value = $_; } } print "$largest_value $second_value\n"; __DATA__ 0.2430 0.0830 0.1320 0.0920 0.0180 0.0880 0.3440