1_over_n_is_finite.pl 450 B

1234567891011121314151617181920212223242526
  1. #!/usr/bin/perl
  2. # Daniel "Trizen" Șuteu
  3. # License: GPLv3
  4. # Date: 25 December 2012
  5. # https://github.com/trizen
  6. # Checks if 1/n is finite or infinite.
  7. # See also: https://perlmonks.org/index.pl?node_id=1006283
  8. use 5.010;
  9. use strict;
  10. use warnings;
  11. sub is_finite {
  12. my ($x) = @_;
  13. $x || return;
  14. $x /= 5 while $x % 5 == 0;
  15. return !($x & $x - 1);
  16. }
  17. foreach my $i (1 .. 20) {
  18. printf "%-4s is finite: %d\n", "1/$i", is_finite($i);
  19. }