CSCI/CMPE 2380 Assignment 4 (100 pts) Create a new class called Calculator, whic
ID: 3886773 • Letter: C
Question
CSCI/CMPE 2380 Assignment 4 (100 pts) Create a new class called Calculator, which should be implemented in two files: Calculator.h and Calculator.cpp. All of the implementation should be in the cpp file and only the declarations in the header. A calculator should be able to add, subtract, multiply, divide and clear. Test your calculator by writing a main program incorporating the test code below: Calculator mycalc; mycalc.clear(); mycalc.add(4.52); mycalc.add(3.789); mycalc.divide(2.6); mycalc.multiply(3.12); mycalc.subtract(2.678); cout << mycalc.display() << endl; // prints out "7.2928" mycalc.clear(); mycalc.add(5.0); cout << mycalc.display() << endl; // prints out "5" //advanced stuff #1: add a constructor Calculator calc1; cout << calc1.display() << endl; //prints out 0 //advanced stuff #2: add a parameterized constructor Calculator calc2(5); cout << calc2.display() << endl; //prints out 5 //advanced stuff #3: Define calculator addition (overload the '+' operator) Calculator calc3(7); calc1 = calc2 + calc3; cout << calc1.display() << endl; //prints out 12 //advanced stuff #4 (Bonus 10): Create an 'undo' method for the calculator mycalc.undo(); mycalc.undo(); cout << mycalc.display()<< endl; //prints out 7.2928
Explanation / Answer
#include <iostream>
using namespace std;
void showMenu ();
int getOption();
int getNumbers();
int addNumbers();
int divideNumbers();
int subtractNumbers();
int multiplyNumbers();
void displayResults();
void showMenu ()
{
cout<<" 1. Select 1 to add two numbers."<<endl;
cout<<" 2. Select 2 to divide two numbers. " <<endl;
cout<<" 3. Select 3 to subtract two number. " <<endl;
cout<<" 4. Select 4 to multiply two number. " <<endl;
}
int getOption (int selection)
{
cin>>selection;
return selection;
}
void getNumbers(int& num1, int& num2)
{
cout<<"Enter two numbers: ";
cin>>num1 >>num2;
}
int addNumbers(int num1, int num2, int& sum)
{
sum=num1+num2;
return sum;
}
int divideNumbers(int num1, int num2, int& sum)
{
sum=num1/num2;
return sum;
}
int subtractNumbers(int num1, int num2, int& sum)
{
sum=num1-num2;
return sum;
}
int multiplyNumbers(int num1, int num2, int& sum)
{
sum=num1 * num2;
return sum;
}
void displayResults(int num1, int num2, int& sum)
{
cout<<num1 << " + " <<num2 << " = " <<sum <<endl;
}
int main ()
{
int a=0;
int num1;
int num2;
int Result;
showMenu();
getOption(a);
getNumbers(num1, num2);
addNumbers(num1, num2, Result);
divideNumbers(num1, num2, Result);
subtractNumbers(num1, num2, Result);
multiplyNumbers(num1, num2, Result);
displayResults(num1, num2, Result);
system("pause");
}