in reply to Re: Determining if a rational number terminates
in thread Determining if a rational number terminates
There are probably shorter ways of doing it, but...
# It is important to clearly comment your code to make it easier # for future maintainers. # # This is the numerator, denominator pair for which we wish to # determine if the decimal expansion terminates. # @ARGV = (33, 660); # Check if it terminates and print "Y" or "N". # sub _{@i=sort{$b-$a}@_;return$i[1]if$i[0]==$i[1];@i=($i[1],$i[0]%$i [1])while$i[1];$i[0]};sub __{$j=_@_;$_/=$j for@_;$_[1]<0and do{$_*= -1for@_}}__(($k,$l)=@ARGV);$l/=2until$l%2;print$l=~/(5|^1)$/?Y:N,$/
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Determining if a rational number terminates
by blackle (Beadle) on Nov 29, 2012 at 18:12 UTC | |
by tobyink (Canon) on Nov 29, 2012 at 20:13 UTC | |
|
Re^3: Determining if a rational number terminates
by pemungkah (Priest) on Dec 03, 2012 at 01:34 UTC | |
by tobyink (Canon) on Dec 03, 2012 at 07:37 UTC |