while( my $line = ) { print $line if $. % 5 == 0 || eof(\*DATA); } __DATA__ line one line two line three line four line five line six line seven line eight line nine line ten line eleven #### line five line ten line eleven #### my ($sum, $count) = (0,0); while () { $sum += $_; $count++; if ($count == 5 || eof(\*DATA) ) { printf "Sum: %4d, count: %2d, mean: %5.1f\n", $sum, $count, $sum/$count; $sum = 0; $count = 0; } } __DATA__ 61 23 30 444 368 438 467 44 812 430 992 469