Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^5: decimal to binary conversion

by aaron_baugher (Curate)
on Jun 05, 2015 at 16:12 UTC ( #1129221=note: print w/replies, xml ) Need Help??


in reply to Re^4: decimal to binary conversion
in thread decimal to binary conversion

Yes, you can drop all the parens when you switch to the ternary operator. And yes, it can be done as a loop, which also removes the 8-bit restriction:

$ cat 1129169.pl #!/usr/bin/env perl use 5.010; use strict; use warnings; sub dec_to_bin { my $dec = shift; print "$dec : "; unless( $dec =~ /^\d+$/ ){ say "Not a whole number!"; return; } my $x = 1; my $bin = ''; while(1){ my $bit = $dec & $x; $bin = ($bit ? 1 : 0) . $bin; $dec -= $bit; last unless $dec; $x <<= 1; } say $bin; } dec_to_bin($_) for @ARGV; $ perl 1129169.pl 0 1 4 255 65536 abc 0 : 0 1 : 1 4 : 100 255 : 11111111 65536 : 10000000000000000 abc : Not a decimal number!

Aaron B.
Available for small or large Perl jobs and *nix system administration; see my home node.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1129221]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (4)
As of 2020-05-25 08:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If programming languages were movie genres, Perl would be:















    Results (144 votes). Check out past polls.

    Notices?