http://www.perlmonks.org?node_id=837441


in reply to calculator script

The problem is ,in the following .
$nbArguments = $#ARGV + 1; print "number of arguments: $nbArgumentsn"; exit(1) unless $nbArguments == 5;

Here you are checking the number of arguments is five.
So it will fail if you are giving input in the following format.
1 + 2 3
So that time you need to check the number of arguments is equal to four.
If you want to give input like,
1 + 2 + 3
then that time you need to check the number of arguments is equal to five.And you need to change the following part of code also.
your code,
$a = $ARGV[0]; $operation = $ARGV[1]; $b = $ARGV[2]; $c = $ARGV[3]
Change into,
$val1 = $ARGV[0]; $operation1 = $ARGV[1]; $val2 = $ARGV[2]; $operation2 = $ARGV[3] $val3=$ARGV[4]

These changes are needed only in the case of if you are giving input in the format 1 + 2 + 3 .