#include <iostream>
#include <string>
using namespace std;
void menu(int a, int b, int c, int d, char symbol);
void addFractions(int a,int b, int c, int d, int &numerator, int &denominator);
void subtractFractions(int a, int b, int c, int d, int &numerator, int &denominator);
void multiplyFractions (int a, int b, int c, int d, int &numerator, int &denominator);
void divideFractions (int a, int b, int c, int d, int &numerator, int &denominator);
//-------------------------------------------------------------------------
int main()
{
int a, b, c, d;
int numerator;
int denominator;
char symbol;
cout << "first, we will need your numerators/denominators." << endl;
cout << "What is your first fractions numerator?" << endl;
cin>> a;
cout << "What is your first fractions denominator?" << endl;
cin >> b;
cout << "What is your second fractions numerator?" << endl;
cin >> c;
cout << "What is your second fractions denominator?" << endl;
cin >> d;
while (d == 0 || b == 0)
{
if (d == 0)
{
cout << "Your second fraction has a 0 in the denominator, what would" <<
" you like to change it to?" << endl;
cin >> d;
}
if (b == 0)
{
cout << "Your first fraction has a 0 in the denominator, what would" <<
" you like to change it to?" << endl;
cin >> b;
}
}
menu(a, b, c, d, symbol);
return 0;
}
//--------------------------------------------------------------------
void menu(int a, int b, int c, int d, char symbol)
{
int numerator, denominator;
cout << "Have fractions that need solving??" << endl;
cout << "Well, luckily for you, you chanced upon a fractions calculator"
<< endl;
cout << "First, we will need the operation you wish to perform." <<
endl;
cout << "choose one of the following: + (addition), - " <<
"(subtraction), * (multiplication), and finally / (division)." << endl;
cin >> symbol;
cout << endl;
switch (symbol)
{
case '*':
multiplyFractions(a,b,c,d,numerator, denominator);
cout << "Answer is " << numerator << "/" << denominator << endl;
system("pause>nul");
break;
case '/':
divideFractions(a,b,c,d,numerator, denominator);
cout << "Answer is " << numerator << "/" << denominator << endl;
system("pause>nul");
break;
case '+':
addFractions(a, b, c, d, numerator, denominator);
cout << "Answer is " << numerator << "/" << denominator << endl;
system("pause>nul");
break;
case '-':
subtractFractions(a,b,c,d,numerator, denominator);
cout << "Answer is " << numerator << "/" << denominator << endl;
system("pause>nul");
break;
default:
cout << "Invalid input, pay better attention next time." << endl;
}
}
void addFractions (int a, int b, int c, int d, int &numerator, int &denominator)
{
numerator = (a*d) + (b*c);
denominator = (b*d);
}
void subtractFractions (int a, int b, int c, int d, int &numerator, int &denominator)
{
numerator = (a*d)-(b*c);
denominator = (b*d);
}
void multiplyFractions(int a, int b, int c, int d, int &numerator, int&denominator)
{
numerator = (a*c);
denominator = (b*d);
}
void divideFractions(int a, int b, int c, int d, int &numerator, int &denominator)
{
numerator = (a*d);
denominator = (b*c);
}
P.S. Try to tab your statements so it's easier to catch when you're missing brackets.