Kanjut SHELL
Server IP : 172.16.15.8  /  Your IP : 3.144.48.72
Web Server : Apache
System : Linux zeus.vwu.edu 4.18.0-553.27.1.el8_10.x86_64 #1 SMP Wed Nov 6 14:29:02 UTC 2024 x86_64
User : apache ( 48)
PHP Version : 7.2.24
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0705) :  /home/sjpruden/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/sjpruden/assignment3.cpp
//      CS212 Assignment 3
//      Due: Monday, February 28, 2011
//      File Name: assignment3.cpp
//      Author: Spencer Pruden
//      Instructor: Dr. Wang
//
//      Goal: The program will read three lines of the input file to get a whole problem. 
//	The first line is the left operand, the second 
//	is the operator, and the third one is the right operand. 
//	The data file has an unknown number of lines, but it will contain complete problems. 
//
//		

#include <iostream>
using namespace std;

class Fraction		
{	int nume;
	int deno;

public:

	Fraction()
	{ 	nume = 0;
		deno = 1;
	}
	Fraction(int n, int d)
	{	nume = n;
		deno = d;
	}
	void Set(int n, int d)
        {       nume = n;
                deno = d;
        }
	void Print() const
	{	cout << nume << "/" << deno; 	}
	Fraction Addition(Fraction x) 
	{	Fraction ans;		
		ans.nume = nume * x.deno + deno * x.nume;
		ans.deno = deno * x.deno;
		return  ans;
	}
	Fraction Subtraction(Fraction x)
        {       Fraction ans;
                ans.nume = nume * x.deno - deno * x.nume;
                ans.deno = deno * x.deno;
                return  ans;
        }
	Fraction Multiplication(Fraction x)
        {       Fraction ans;
                ans.nume = nume * x.nume;
                ans.deno = deno * x.deno;
                return  ans;
        }
	Fraction Division(Fraction x)
        {       Fraction ans;
                ans.nume = nume * x.deno;
                ans.deno = deno * x.nume;
                return  ans;
        }

};

int main()
{	
	int a1, b1;
	int a2, b2;
	char dummy, op;
	while(cin)
	{
	cin >> a1 >> dummy >> b1;
	cin >> op;
	cin >> a2 >> dummy >> b2;

	Fraction f1, f2, answ;
	f1.Set(a1, b1);
	f2.Set(a2, b2);

	if(op == '+')	answ = f1.Addition(f2);
	if(op == '-')   answ = f1.Subtraction(f2);
	if(op == '*')   answ = f1.Multiplication(f2);
	if(op == '/')   answ = f1.Division(f2);
	
	f1.Print();
	cout << " " << op << " " << "\n";
	f2.Print();
	cout << " = ";
	answ.Print();
	}
	cout << "\n";
	return 0;
}





Stv3n404 - 2023