A work in two parts. First, Happy.pm, a Perl5 Module.
packageHappy;usestrict;usewarnings;useutf8;usefeatureqw{ postderef say signatures state };nowarningsqw{ experimental::postderef experimental::signatures };useCarp;useExporterqw( import );useList::Utilqw( sum0 );our@EXPORT=qw( is_happy );our%EXPORT_TAGS=('all'=>[@EXPORT],);our@EXPORT_OK=(@{$EXPORT_TAGS{'all'}});our$VERSION=0.0.1;sub is_happy( $number ) {croak'Not a number'if$number=~m{\D};croak'Not anything'if!defined$number;my%done;while($number!=0&&$number!=1){return0if$done{$number};my$output=sum0map{$_**2}splitm{},$number;$done{$number}=$output;$number=$output;}return$number;}1;
Which is called by a program.
#!/usr/bin/env perl
use strict ;
use warnings ;
use utf8 ;
use feature qw{ say } ;
use lib '/home/jacoby/lib' ;
use Happy ;
for my $i ( 0 .. 1_000_000 ) {
say $i if is_happy( $i ) ;
}
Not particularly golfy, because I like reading and understanding things.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
A work in two parts. First, Happy.pm, a Perl5 Module.
Which is called by a program.
Not particularly golfy, because I like reading and understanding things.