in reply to Re: Homework: simple calculator
in thread Homework: simple calculator

Much better, but a little refactoring improves things even more:

#!/user/bin/perl use strict; use warnings; print "Welcome to the math program\n"; while (1) { print "Enter a number (or q to quit)\n"; my $first_number = <STDIN>; chomp ($first_number); die "Goodbye!\n" if $first_number eq 'q'; print "Enter a second number"; my $second_number = <STDIN>; chomp ($second_number); my $add = $first_number + $second_number; my $subtract = $first_number - $second_number; my $times = $first_number * $second_number; print "$first_number + $second_number = $add\n"; print "$first_number - $second_number = $subtract\n"; print "$first_number x $second_number = $times\n"; if ($second_number !=0) { my $divide = $first_number / $second_number; print "$first_number / $second_number = $divide\n"; } }

Of course there is another way to do it. Consider:

#!/user/bin/perl use strict; use warnings; print "Welcome to the math program\n"; while (1) { print "Enter a number (or q to quit)\n"; my $first_number = <STDIN>; chomp ($first_number); die "Goodbye!\n" if $first_number eq 'q'; print "Enter a second number\n"; my $second_number = <STDIN>; chomp ($second_number); print "$first_number $_ $second_number = ", eval "$first_number $_ + $second_number", "\n" for $second_number != 0 ? qw(+ - * /) : qw(+ - *); }

Perl is environmentally friendly - it saves trees