Question: C++: Operator overloading and Rational Fractions. Exercise 10: Rational fractions are of the form a / b , in which a and b are integers

C++: Operator overloading and Rational Fractions.

Exercise 10:

Rational fractions are of the form a/b, in which a and b are integers and b0. In this exercise, by fractions we mean rational fractions. Suppose a/b and c/d are fractions. Arithmetic operations on fractions are defined by the following rules:

a/b + c/d = (ad + bc)/bd

a/b c/d = (ad bc)/bd

a/b * c/d = ac/bd

(a/b)/(c/d) = ad/bc; in which c/d 0.

Fractions are compared as follows: a/b op c/d if ad op bc, in which op is any of the relational operations. For example, a/b c/d if ad bc. Design a class say, fractionType that performs the arithmetic and relational operations on fractions. Overload the arithmetic and relational operators so that the appropriate symbols can be used to perform the operation. Also, overload the stream insertion and stream extraction operators for easy input and output.

Write a C++ program that, using the class fractionType, performs operations on fractions.

Among other things, test the following: Suppose x, y, and z are objects of type fractionType. If the input is 2/3, the statement

Cin >> x;

should store 2/3 in x. The statement

cout

should output the value of x + y in fraction form. The statement

z = x + y;

should store the sum of x and y in z in fraction form. Your answer need not be in the lowest terms.

C++: Operator overloading and Rational Fractions. Exercise 10: Rational fractions are of

Rational Fractions Chapter 13 Programming Exercise #10 Page 983 Additional Requirements Use a template so the class works with any kind of number (i.e. int, float, double) fraction Type numl(5, 6); fraction Type num1(5.1, 6.2); Tip: get your class working with integer values first for numerator and denominator and convert to a template after it is working with ints. When converting to a template you may need to move all of your implementation into the .h header file. Submit source code, a screenshot with a time stamp of code execution, and a text file of the code. All code should include comments. Rational Fractions Chapter 13 Programming Exercise #10 Page 983 Additional Requirements Use a template so the class works with any kind of number (i.e. int, float, double) fraction Type numl(5, 6); fraction Type num1(5.1, 6.2); Tip: get your class working with integer values first for numerator and denominator and convert to a template after it is working with ints. When converting to a template you may need to move all of your implementation into the .h header file. Submit source code, a screenshot with a time stamp of code execution, and a text file of the code. All code should include comments

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!