1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
use warnings; use strict; use List::Util qw(sum); use v5.38; my @inputs = ("a1", "f1", "d8"); for (@inputs) { say $_ . ' => ' . ( check_square($_) ? 'true' : 'false' ); } sub check_square( $key ) { return sum( map { ord($_) } split '', $key ) % 2; }