Homework 3: C++ programming Due date: April 20th, at the same time as the exam Turn in the hard copy of the listing. 1. Implement problem 3 from homework 2 using object oriented programming. The Position structure needs to be a class, and the printPosition and move functions member functions of the class. 2. Implement a class which implements Rational numbers. You need to store the numerators and denominators as integers. Implement the following operations as functions. It is part of your job to design the signature of functions: a) Printing in the "a/b" form b) Printing in the "a b/c" form, where b/c < 1 (canonical form, eg. 1 1/2) c) Multiplying two rational numbers. d) Dividing two rational numbers. e) Adding two rational numbers. f) Adding an "int" to a rational number. g) Adding a "float" to a rational number. h) Simplifying a rational number (eg. 2/4 ---> 1/2)