Analysis create a calculator that adds subtracts multiplies
Solution
//Tested on Ubuntu,Linux
#include <iostream>
 #include <math.h>
 using namespace std;
 /*Variable declaration*/
 double x,y;
 /*add function implementation*/
 double add(double x,double y) {
 return (x+y);
 }
 /*subtract function implementation*/
 double subtract(double x,double y) {
 return (x-y);
 }
 /*multiply function implementation*/
 double multiply(double x,double y) {
 return (x*y);
 }
 /*divide function implementation*/
 double divide(double x,double y) {  
 return (x/y);
 }
 /*remind function implementation*/
 double remind(double x,double y) {
 return remainder(x,y);
 }
 /*getValue function implementation
 * prompt for value of x and y*/
 double getValue() {
/*Prompt for x and y value*/
 std::cout<<\"Please Enter x value\"<<std::endl;
 std::cin>>x;
 std::cout<<\"Please Enter y value\"<<std::endl;
 std::cin>>y;
return y;
 }
 /*Main function start*/
 int main(){
char ch;
 /*calling getvalue function*/
 getValue();
/*Getting choice from user*/
 std::cout<<\"Please Enter your choice\"<<std::endl;
 std::cout<<\"a.Add\ s.Subtract\ m.Multiply\ d.Divide\ r.remainder\ q.quit\ \";
  std::cin>>ch;
/*Based on the choice it will call that function*/
 switch(ch){
 case \'a\':         
 std::cout<<\"add:\"<<add(x,y)<<std::endl;
 break;
 case \'s\':
 std::cout<<\"subtract:\"<<subtract(x,y)<<std::endl;
  break;
 case \'m\':
 std::cout<<\"mult:\"<<multiply(x,y)<<std::endl;
  break;
 case \'d\':
 if(y==0) {
 std::cout<<\"VALIDATE!!!cant div by zero\"<<std::endl;
 }else {
 std::cout<<\"divide:\"<<divide(x,y)<<std::endl;
  }
 break;
 case \'r\':
 if(y==0) {
 std::cout<<\"VALIDATE!!!cant div by zero\"<<std::endl;
 }else {
 std::cout<<\"mod:\"<<remind(x,y)<<std::endl;
 }
 break;
 case \'q\':
 break;
 }
return 0;
 }
 /*End main Function*/
/***************output***************/
 anshu@anshu:~/Desktop/chegg$ g++ calculator.cpp -lm
 anshu@anshu:~/Desktop/chegg$ ./a.out
 Please Enter x value
 1
 Please Enter y value
 2
 Please Enter your choice
 a.Add
 s.Subtract
 m.Multiply
 d.Divide
 r.remainder
 q.quit
 r
 mod:1
 anshu@anshu:~/Desktop/chegg$ ./a.out
 Please Enter x value
 1
 Please Enter y value
 0
 Please Enter your choice
 a.Add
 s.Subtract
 m.Multiply
 d.Divide
 r.remainder
 q.quit
 d
 VALIDATE!!!cant div by zero
 anshu@anshu:~/Desktop/chegg$ ./a.out
 Please Enter x value
 1
 Please Enter y value
 0
 Please Enter your choice
 a.Add
 s.Subtract
 m.Multiply
 d.Divide
 r.remainder
 q.quit
 r
 VALIDATE!!!cant div by zero
 anshu@anshu:~/Desktop/chegg$ ./a.out
 Please Enter x value
 1
 Please Enter y value
 2
 Please Enter your choice
 a.Add
 s.Subtract
 m.Multiply
 d.Divide
 r.remainder
 q.quit
 a
 add:3
 anshu@anshu:~/Desktop/chegg$ ./a.out
 Please Enter x value
 1
 Please Enter y value
 2
 Please Enter your choice
 a.Add
 s.Subtract
 m.Multiply
 d.Divide
 r.remainder
 q.quit
 s
 subtract:-1
 anshu@anshu:~/Desktop/chegg$ ./a.out
 Please Enter x value
 1
 Please Enter y value
 2
 Please Enter your choice
 a.Add
 s.Subtract
 m.Multiply
 d.Divide
 r.remainder
 q.quit
 m
 mult:2
 anshu@anshu:~/Desktop/chegg$ ./a.out
 Please Enter x value
 1
 Please Enter y value
 2
 Please Enter your choice
 a.Add
 s.Subtract
 m.Multiply
 d.Divide
 r.remainder
 q.quit
 d
 divide:0.5




