# Multi-level inheritance :
# 1 parent, 1 child & 1 grand child :
class Student:
def setStd(self,code,name,course,fee):
self.code=code
self.name=name
self.course=course
self.fee=fee
def getStd(self):
print("code :",self.code)
print("name :",self.name)
print("course :",self.course)
print("fee :",self.fee)
class Marks(Student):
def setMarks(self,m1,m2,m3):
self.m1=m1
self.m2=m2
self.m3=m3
def getMarks(self):
print(" M1 :",self.m1)
print(" M2 :",self.m2)
print(" M2 :",self.m3)
class Result(Marks):
def setResult(self):
self.total=self.m1+self.m2+self.m3
self.average=self.total//3
def getResult(self):
print("Total Marks :",self.total)
print("Marks Average :",self.average)
if self.m1>=35 and self.m2>=35 and self.m3>=35 and self.average>=75:
print(" Distinction ")
elif self.m1>=35 and self.m2>=35 and self.m3>=35 and self.average>=60:
print(" First Class ")
elif self.m1>=35 and self.m2>=35 and self.m3>=35 and self.average>=50:
print(" Second Class ")
elif self.m1>=35 and self.m2>=35 and self.m3>=35 and self.average>=40:
print(" Third Class ")
else:
print("fail")
Std1=Result()
Std1.setStd(1,"veena","python",9898)
Std1.setMarks(95,99,96)
Std1.getStd()
Std1.getMarks()
Std1.setResult()
Std1.getResult()