# Computer Science

### Part 1: Complete Fraction Class

Complete the implementation of the Fraction class provided below.

``````class Fraction:
#Constructor. Puts fraction in simplest form
def __init__(self,a,b):
self.num = a
self.den = b
self.simplify()
#Print Fraction as a String
def __str__(self):
if self.den==1:
return str(self.num)
else:
return str(self.num)+"/"+str(self.den)
#Get the Numerator
def getNum(self):
return self.num
#Get the Denominator
def getDen(self):
return self.den
#Give Numerical Approximation of Fraction
def approximate(self):
return self.num/self.den
#Simplify fraction
def simplify(self):
x = self.gcd(self.num,self.den)
self.num = self.num // x
self.den = self.den // x
#Find the GCD of a and b
def gcd(self,a,b):
if b==0:
return a
else:
return self.gcd(b,a % b)
#Complete these methods in lab
return 0
def __sub__(self,other):
return 0
def __mul__(self,other):
return 0
def __truediv__(self,other):
return 0
def __pow__(self,exp):
return 0
``````

Complete Implementation of the following methods. All of these methods will return an instance of the Fraction class. • Subtract: • Multiply: • Divide: • Power (when k>0 and k is an integer):   ### Part 2: Fraction Problems

Create a file lab3.py. In this file, use your fraction class to implement functions for each of the following formula. You program should ask the user for the value of n to use in the summations.

Remember that a summation symbol just tells you to add all the values in a range. Write functions for each of the below expressions.

1. Harmonic Series: 2. Two: 3. Zero: 4. Partial Riemann Zeta: Your program will ask for n as input. Compute each of the functions for the given input n. When computing the Riemann Zeta function, print values for b=2,3,4,5,6,7,8.

Verify that the input is a valid number. If it is not, ask repeatedly until a valid number is given.

Once you have been given a valid input, print out the values of each of the functions in the order H, T, Z, R. See below execution trace for exact layout.

### Scoring

• Part 1
• 6pts – Subtract
• 6pts – Multiply
• 6pts – True Divide
• 6pts – Power
• Part 2
• 10pts – H Function
• 10pts – T Function
• 10pts – Z Function
• 10pts – R Function

### Example Execution Trace

``````Welcome to Fun with Fractions!
Enter Number of iterations (integer>0):
Enter Number of iterations (integer>0):
10
H(10)=7381/2520
H(10)~=2.92896825
T(10)=2047/1024
T(10)~=1.99902344
Z(10)=1/1024
Z(10)~=0.00097656
R(10,2)=1968329/1270080
R(10,2)~=1.54976773
R(10,3)=19164113947/16003008000
R(10,3)~=1.19753199
R(10,4)=43635917056897/40327580160000
R(10,4)~=1.08203658
R(10,5)=105376229094957931/101625502003200000
R(10,5)~=1.03690734
R(10,6)=52107472322919827957/51219253009612800000
R(10,6)~=1.01734151
R(10,7)=650750820166709327386387/645362587921121280000000
R(10,7)~=1.00834915
R(10,8)=1632944765723715465050248417/1626313721561225625600000000
R(10,8)~=1.00407735``````

Order now and get 10% discount on all orders above \$50 now!!The professional are ready and willing handle your assignment.

ORDER NOW »»