Sponsored Content
Homework and Emergencies Homework & Coursework Questions Problem with calculator script Post 302478864 by zkapopou on Thursday 9th of December 2010 05:19:50 AM
Old 12-09-2010
Problem with calculator script

I'm having some trouble implementing a basic calculator using command line options. The script is supposed to take (multiple) arguments -a,-d,-m,-s for addition, multiplication, division, and subtraction. I'm pretty sure I know how to parse through the options with getopt(), but I have no idea how to get both arguments to operate on (ex: 7 -a 7, no idea how to get both 7's). I'm pretty sure I can get the first one, but no idea how to get the second.

Here's my current code:

Code:
#!/bin/bash

function printhelp {
echo "mymath.sh usage:"
echo "   mymath.sh [-options] [num1 num2]"
echo ""
echo "where options include:"
echo ""
echo " options that require 2 arguments (multiple options are allowed):"
echo "   -a   add           add num1 and num2"
echo "   -s   subtract      perform num1 minus num2"
echo "   -d   divide        divide num1 by num2 (integer division)"
echo "   -m   multiply      multiply num1 and num2"
echo ""
echo " options that cannot take any arguments, nor any other option:"
echo "   -h   help          display this message"
echo "   -v   version       provides the script's version (hard-coded)"
}

function printversion {
echo "Welcome to MyMath! Current version is v1.0"
}

function add {
   sum="$1 + $2"
   echo $sum
}

function multiply {
   product="$1" * "$2"
   echo $product
}

function subtract {
   diff="$1" - "$2"
   echo $diff
}

function divide {
   quotient="$1"/"$2"
   echo $quotient
}

if [ $# -le 1 ];
then
   if [ "$1" == "-h" ]; then
      printhelp
   elif [ "$1" == "-v" ]; then
      printversion
   else 
      printhelp
   fi
fi

while getopts "a:s:d:m:" opt
do
  case "$opt" in
    a) add $oper1 $oper2    
    ;;
    s) subtract $oper1 $oper2
    ;;
    d) divide $oper1 $oper2
    ;;
    m) multiply $oper1 $oper2
    ;;
    \?) 
    echo "Invalid option: -$OPTARG" >&2
    echo ""
    printhelp;;
    :)
        echo "Option -$OPTARG requires an argument." >&2
    printhelp
        exit 1
      ;;

  esac
done

Thanks for any help.
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

calculator program..

Hey can anyone tell me the korn script code to implement an interactive integer calculator using the shell's built in arithemetic expression evaluation (2 Replies)
Discussion started by: sahithi_khushi
2 Replies

2. Shell Programming and Scripting

Calculator

I am pretty new to the Unix word, and have created a working calculator script. I have one problem. It doesn't use any decimals, it rounds off to the nearest whole number. 1 #!/bin/ksh 2 while true; do 3 echo -n "Enter the first integer: "; read IN1 4 test... (2 Replies)
Discussion started by: ironhead3fan
2 Replies

3. UNIX for Dummies Questions & Answers

calculator

hi, im new to the unix system and scripting and was wondering if anyone could help me with this problem iv been havin... i want the system to: 1. ask me for a number 2. ask me for a command to use on that number (* + - /) 3. ask me for another number 4. then ask me for another command, if the... (2 Replies)
Discussion started by: jdougy
2 Replies

4. Shell Programming and Scripting

Help with calculator code

Hi Guys, I found this code in net.. it is working fine.. But can anybody explain me the sed statement used in the code.. echo "Enter the expression:\c" read express eval echo "$express"|sed 's/^/'$precision' \ /'|bc -l|\ sed -n '1,${ /syntax/!{ } ... (2 Replies)
Discussion started by: mac4rfree
2 Replies

5. Shell Programming and Scripting

chmod calculator script

so just spit ballin here, i was wondering if anybody knew how to make a chmod calculator script. basically go to this website http://mistupid.com/internet/chmod.htm i would like something like this that i can use in a terminal tho. so like i run the scrip and it ask for owner what... (1 Reply)
Discussion started by: hookitup
1 Replies

6. Homework & Coursework Questions

Simple Calculator

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known/data: Script a simple calculator. In the command line enter the script file /home/etc/mycalc or /home/etc/mycalc 1 +... (6 Replies)
Discussion started by: herb bertz
6 Replies

7. Shell Programming and Scripting

CSH Calculator Script

Using the C Shell, I'm building a script that will compute simple mathematical computations (addition, subtraction, multiplication, division). The user will enter two integers (operands) on the command line separated by the operation (operator) they wish to perform. Example of the command line... (7 Replies)
Discussion started by: ksmarine1980
7 Replies

8. Shell Programming and Scripting

Pls help with script made a calculator

Hello, I'm in need with a little help for my script please this is the brief i need to complete which I haven't been able to do: On option 7 stop the calculator The calculator will keep running until option 7 is chosen. Any other option than 1-7 will generate an error message. Pls any help... (1 Reply)
Discussion started by: linuxepicuser
1 Replies

9. Shell Programming and Scripting

Shell Script Calculator

Hello, I have to make a calculator in shell script. But I get this error. Can someone help me please? c.sh: 3: c.sh: i: not found That's my code. ========================================================================== #Calculator i = "yes" while do echo What operation... (2 Replies)
Discussion started by: KJN
2 Replies
CALCOO(1)							Calcoo Manual Page							 CALCOO(1)

NAME
Calcoo - scientific calculator (GTK+). SYNOPSIS
calcoo [OPTION] DESCRIPTION
Calcoo is a scientific calculator designed to provide maximum usability. The features that make Calcoo attractive are: * bitmapped button labels and display digits to improve readability * no double-function buttons - you need to click only one button for any operation (except for arc-hyp trigonometric functions) * undo/redo buttons * both RPN and algebraic modes * display marks to separate thousands * copy/paste interaction with the X clipboard * two memory registers with displays * displays for Y, Z, and T registers OPERATION
Like in a regular calculator. Settings (switching between RPN and algebraic modes, rounding, RPN stack behavior) can be accessed by press- ing the button labelled "!". The button labelled "?" brings up the help/info window. OPTIONS
Calcoo accepts the following command-line options: -h, --help Show summary of options and exit. -v, --version Print version number and exit. OTHER INFO
The webpage for Calcoo is at http://calcoo.sourceforge.net/ There you can find more information about Calcoo and download the latest version. AUTHOR
Alexei Kaminski (alexei.kaminski@gmail.com) BUGS
None I am aware of. If you find any, please report them. Version 1.3.18 18 Aug 2007 CALCOO(1)
All times are GMT -4. The time now is 02:13 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy