#!/usr/bin/perl -T use strict; use warnings; use utf8; use open qw(:std :utf8); use Encode qw(encode decode); sub usage() { print STDERR "usage: $0 filename\n"; exit; } unless ($#ARGV == 0) { usage(); } @ARGV = map { decode("UTF-8", $_) } @ARGV; my $read_f = $ARGV[0] ; unless (-e $read_f && -s $read_f) { usage; } my ($num, $t_sum, $co2_sum) = (0, 0, 0); open(IN, "<", $read_f) or die "omg! can't open input file: $read_f"; while () { chomp; my ($x, $a, $temp, $y, $q, $co2, $z) = split; $t_sum += $temp; $co2_sum += $co2; $num++; } printf "Avg CO₂ level: %.2f ppm\t", $co2_sum / $num; printf "Avg Temp: %.2f °C\n", $t_sum / $num; close(IN);