Concept explainers
Define a class for rational numbers. A rational number is a number that can be represented as the quotient of two integers. For example, 1/2, 3/4, 64/2, and so forth are all rational numbers. (By 1/2, etc., we mean the everyday meaning of the fraction, not the integer division this expression would produce in a C++ program.) Represent rational numbers as two values of type int, one for the numerator and one for the denominator. Call the class Rational.
Include a constructor with two arguments that can be used to set the member variables of an object to any legitimate values. Also include a constructor that has only a single parameter of type int; call this single parameter wholeNumber and define the constructor so that the object will be initialized to the rational number wholeNumber/1. Also include a default constructor that initializes an object to 0 (that is, to 0/1).
Overload the input and output operators >> and <<. Numbers are to be input and output in the form 1/2, 15/32, 300/401, and so forth. Note that the numerator, the denominator, or both may contain a minus sign, so −1/2, 15/32, and −300/−401 are also possible inputs. Overload all of the following operators so that they correctly apply to the type Rational: ==, <, <=, >, >=, +, −, *, and /. Also write a test program to test your class.
(Hints: Two rational numbers a/b and c/d are equal if a*d equals c*b. If b and d are positive rational numbers, a/b is less than c/d provided a*d is less than c*b. You should include a function to normalize the values stored so that, after normalization, the denominator is positive and the numerator and denominator are as small as possible. For example, after normalization 4/−8 would be represented the same as −1/2. You should also write a test program to test your class.)
Trending nowThis is a popular solution!
Chapter 11 Solutions
Problem Solving with C++ (10th Edition)
Additional Engineering Textbook Solutions
Concepts of Programming Languages (11th Edition)
Starting Out with C++: Early Objects
Introduction To Programming Using Visual Basic (11th Edition)
Starting Out with C++ from Control Structures to Objects (8th Edition)
Starting Out with Java: From Control Structures through Objects (7th Edition) (What's New in Computer Science)
Starting Out with Python (4th Edition)
- Code in C++ Language As a cashier, you would always hate those times when customers choose to take back their order since you'd always summon your manager and yell, "Ma'am pa-void!" No matter how you hate it, you always have to do it since you have no other choice. Given (1) an array of prices of the items, (2) another array of the items the customer wishes to take back, and (3) the customer's payment, print the change of the customer. Input: The first number indicates the number of items "n" brought to the cashier. The next "n" numbers are the prices of the items. The next number indicates the number of items "m" that the customer wants to take back and not proceed. It is assured that 0 <= m <= n. The next "m" numbers are the items to be void that ranges from item 1 to item "n". The final number is the customer's payment. It is also assured that the given payment >= final price of items. INPUT: 5 103.65 650.95 10.25 1067.30 65.18 2 1 5 2000.00 Output: The change…arrow_forwardHello please solve the below in C++. I used the code provide by a Bartleby expert and I was marked down, the feedback was “it doesn't overload the operators as it should” Question Create a class called Rational (separate the files as shown in the chapter) for performing arithmetic with fractions. Write a program to test your class. Use integer variables to represent the private data of the class-the numerator and the denominator. Provide a constructor that enables an object of this class to be initialized when it's declared. The constructor should contain default values in case no initializers are provided and should store the fraction in reduced form. For example, the fraction 2/4 would be stored in the object as 1 in the numerator and 2 in the denominator. Provide public member functions that perform each of the following tasks: Make an overloaded operator of the + symbol for the add method - Adds two Rational numbers. The result should be stored in reduced form. Make an overloaded…arrow_forwardThis would be for C++ Write a program that calculates a target heart rate. It should have a class called Heart that has a string name and an int age. This class should have getter and setter methods for those member variables. It should also have a method that returns the maximum heart rate which is 220 minus age, a method that returns the maximum target heart rate which is 85% of the maximum heart rate, and a method that returns the minimum target heart rate which is 50% of the maximum. Write a driver program that prompts the user for a name (use getline to get names with spaces) and age and then prints the name, age, maximum heart rate, and the target heart rate. The output needs to be able to recreate the example shown below. Here is an example run of the program would be the following as the assignment shows Please tell me your name: Jake Peralta Please tell me your age: 37 Your name is Jake Peralta Your age is 37 Your maximum heart rate is 183 Your target heart rate is 91-155arrow_forward
- Write in c++ Write a program to print the area of a rectangle by creating a class named 'Area' having twofunctions. First function named as 'setDim' takes the length and breadth of the rectangle asparameters and the second function named as 'getArea' returns the area of the rectangle. Length andbreadth of the rectangle are entered through keyboard.arrow_forwardWrite a C++ class and choose any name for it. The class should have two privatemembers and two public members. Write a constructor to initialize these membersto zero. Write another constructor to initialize these members to non-zero values.Write a method to return the average of the class members. Write a C++ programand initialize the members of the class with [2,5,8,3] respectively and call its methodto calculate the average.arrow_forwardSOLVE IN "C#" Write c# equivalent statements for the following: There is a book library. Define classes respectively for a library. The library must contain a name and a list of books (use array). The books only contain author name as information. In the class, which describes the library, create methods to add a book to the library, to search for a book by a predefined author, and to delete a book from the library. Write a test class, which creates an object of type library, adds several books to it. Implement a test functionality, which finds all books authored by Stephen King and deletes them. Finally, display information for each of the remaining books.arrow_forward
- Help write the code for the follwing problem starting from scratch Write a complete C++ program in three files here that asks the user to enter a radius for a circle then calculates and prints its' area. The area should be calculated using the formula area = 3.14 * radius * radius. You must have a class called Circle that stores the radius as a double value and can calculate its' own area via a method called calcArea that takes no parameters and returns the area. The circle class may not print the area or radius! Hint: calcArea should take no parameters and return a double. For this version, make radius private and write setter (mutator) and getter (accessor) methods and/or constructors as needed to modify (set) and retrieve (get) the value of radius. Input Validation: If a negative radius is passed to an object of the Circle class, whether through a setter or a constructor, set the radius to 0 instead of using the negative value. This program MUST be split into three files: Header…arrow_forwardC++ 2. Define a new "Degree" class that contains a year (integer), a subject (string), and a person’s name (string). For example, a degree can have "John Smith", 2020, and "Computer Science" It should have at least the following methods:- toString method must return all the degree information: year, subject, and person’s name.Here is an example of the formatted degree string:NAME(John Smith) SUBJECT(Computer Science) YEAR(2020) - hasTheSameDegree method compares 2 degrees and returns true if both have the same year and the same subject. Otherwise, it returns false. - isLater method that compares 2 degrees and returns true if the current degree has the year later than the 2nd degree and false otherwise. Important notes: - You can add as many other methods as you need. But this class should not provide the default constructor. - Show how this class and its methods are being used, called, and produce the correct results.arrow_forwardWrite in C++ Language (Happy Coding):Create a class named 'Programming'. While creating an object of the class, if nothing is passed to it, then the message "I love programming languages" should be printed. If some String is passed to it, then in place of "programming languages" the name of that String variable should be printed.For example, while creating the object if we pass "cpp", then "I love cpp" should be printed.arrow_forward
- Using C++ 11 Write a program which overloads fractions arithmetic operations for division. And include the overloading operators which we did in the class like multiplication, comparison, insertion, and extraction operators. Here is the class: class NumDays { int hr; //declaring hour variable to store hours float days; //declaring days variable to store days public: //default constructor NumDays() { hr = 0; days = 0.0; }; // parametrized constructor NumDays(int hrs) { hr = hrs; days = float(hrs / 8.0); }; // implementing getters method to return hours value from class int getHour() { return hr; } // implementing getters method to return no of days from class float getDays() { return days; } // method to implement addition operator NumDays operator + (NumDays obj) { int hrs = getHour() + obj.getHour(); NumDays temp(hrs); return temp; } // method to…arrow_forwardIn C++ Define a class named Complex that will represent complex numbers. Acomplex number is a number of the forma+b*i,where, for our purposes, a and b are integers and i represents sqrt(-1).In your class, include a constructor that takes two parameters andinitializes a and b to the first and second parameter respectively, and includea constructor that takes one parameter and initializes a to the value of theparameter and b to 0. Also include a default constructor that initializes both aand b to 0. Overload all of the followind operators so that they correctly applyto the class Complex: ==, +, -, *, >>, and <<.Using your Complex class, write a program that would let the user input twocomplex numbers, and then print out their sum, difference, product, and whetherthey are equal to one another.arrow_forwardCreate a class “Student” with data members such as roll number, name and branch. Create another class “Exam” for storing marks of three subjects. Derive a new class “Result” from “Student” and “Exam” class with data members such as total and average. Display the values of all the data members. Develop a C++ program to model the above relationships.Also include comments for the code. Test cases Private – Input 1000 ABC CSE 90 80 70 Output 240 80 Public – Input 2000 DEF IT 25 30 35 Output 90 30arrow_forward
- EBK JAVA PROGRAMMINGComputer ScienceISBN:9781337671385Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENT