Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re: What makes good Perl code?

by RedElk (Hermit)
on Aug 16, 2011 at 04:16 UTC ( #920406=note: print w/replies, xml ) Need Help??

in reply to What makes good Perl code?

Here's a snippet of how I would approach your example in my attempt at "good code". Just another opinion, mind you.

#!/usr/bin/perl use strict; use warnings; my $voltage; my $current; my $resistance; print "I will calculate whatever you specify according to Ohm's law. What shall I calculate? \n"; menu(); sub menu() { print "\n"; print <<EOF; Press 1 for voltage. Press 2 for current. Press 3 for resistance. Press x to Exit. EOF my $selection = <STDIN>; chomp $selection; if ($selection == 1) {voltage();} elsif ($selection == 2) {current();} elsif ($selection == 3) {resistance();} elsif ($selection =~ /x,X/ {all_done();} else {print "\nSorry, that isn't on the menu. Try again!\n";} menu(); }

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://920406]
[marto]: Tux so I'm told :)
[ww]: ww seconds erix view
[ww]: or, better, erix' view
[LanX]: erix define a bad morning and show that it doesn't apply

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (13)
As of 2017-09-22 12:43 GMT
Find Nodes?
    Voting Booth?
    During the recent solar eclipse, I:

    Results (263 votes). Check out past polls.