use strict;
use warnings;
my @dat = (
{score => [-4.3, 24], range => [ 96, 205] },
{score => [-2.01, 12], range => [145, 210] },
{score => [ 3, 31], range => [180, 240] },
{score => [ 7, 14], range => [200, 250] },
);
my $num = $ARGV[0];
my $output;
my $count;
foreach (@dat) {
if ($num >= $_->{range}[0] and $num <= $_->{range}[1]) {
$output += ($_->{score}[0] / $_->{score}[1]);
$count++;
}
}
die "Number does not match any score\n" if !defined $count;
$output /= $count;
print "$num $output\n";