# 回文数 Palindromic Number # 引数 数字 ($Number) # 戻り値 回文数 ($PalindromicNumber) sub PALINDROMICNUMBER{ my ($Number) = @_; my $PalindromicNumber = 0; my @Number = split(//, int($Number)); my $Start = 0; my $End = @Number - 1; my $Limit = int(($Start + $End) / 2); my $IsFailure = 0; # 数字の確認 if($Number < 1){ return 0; } for(my $i = 0; $i <= $Limit; $i++){ if($Number[$Start + $i] != $Number[$End - $i]){ $IsFailure = 1; last; } } if($IsFailure == 0){ # 回文数 Palindromic Number $PalindromicNumber = int($Number); } return $PalindromicNumber; }