Skip to content

Commit 3ce062e

Browse files
Add files via upload
1 parent 6ccd778 commit 3ce062e

File tree

11 files changed

+1302
-0
lines changed

11 files changed

+1302
-0
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
class RealNumber:
2+
def __init__(self, r=0):
3+
self.__realValue = r
4+
5+
def getRealValue(self):
6+
return self.__realValue
7+
8+
def setRealValue(self, r):
9+
self.__realValue = r
10+
11+
def __str__(self):
12+
return "RealPart: " + str(self.getRealValue())
13+
14+
15+
class ComplexNumber(RealNumber):
16+
def __init__(self, r=1, i=1):
17+
super().__init__(r)
18+
self.imaginary_Value = i
19+
20+
def __str__(self):
21+
return f"RealPart: {str(float(self.getRealValue()))}\nImaginaryPart: {str(float(self.imaginary_Value))}"
22+
23+
24+
cn1 = ComplexNumber()
25+
print(cn1)
26+
print("---------")
27+
cn2 = ComplexNumber(5, 7)
28+
print(cn2)
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
class RealNumber:
2+
def __init__(self, number=0):
3+
self.number = number
4+
5+
def __add__(self, anotherRealNumber):
6+
return self.number + anotherRealNumber.number
7+
8+
def __sub__(self, anotherRealNumber):
9+
return self.number - anotherRealNumber.number
10+
11+
def __str__(self):
12+
return str(self.number)
13+
14+
15+
class ComplexNumber(RealNumber):
16+
def __init__(self, real, imaginary):
17+
18+
if isinstance(real, int):
19+
super().__init__(real)
20+
self.imaginary = imaginary
21+
else:
22+
super().__init__(real.number)
23+
self.imaginary = imaginary
24+
25+
def __add__(self, other):
26+
27+
real_num = (self.number) + (other.number)
28+
imaginary_num = (self.imaginary) + other.imaginary
29+
30+
return ComplexNumber(real_num, imaginary_num)
31+
32+
def __sub__(self, other):
33+
34+
real_num = (self.number) - (other.number)
35+
imaginary_num = (self.imaginary) - other.imaginary
36+
37+
return ComplexNumber(real_num, imaginary_num)
38+
39+
def __str__(self):
40+
if self.imaginary < 0:
41+
return f"{str(self.number) + str(self.imaginary)}i"
42+
else:
43+
return f"{self.number} + {self.imaginary}i"
44+
45+
46+
r1 = RealNumber(3)
47+
r2 = RealNumber(5)
48+
print(r1 + r2)
49+
cn1 = ComplexNumber(2, 1)
50+
print(cn1)
51+
cn2 = ComplexNumber(r1, 5)
52+
print(cn2)
53+
cn3 = cn1 + cn2
54+
print(cn3)
55+
cn4 = cn1 - cn2
56+
print(cn4)
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
class Account:
2+
def __init__(self, balance):
3+
self._balance = balance
4+
5+
def getBalance(self):
6+
return self._balance
7+
8+
9+
class CheckingAccount(Account):
10+
numberOfAccount = 0
11+
12+
def __init__(self, balance=0.0):
13+
CheckingAccount.numberOfAccount += 1
14+
super().__init__(balance)
15+
16+
def __str__(self):
17+
return f"Account Balance: {str(self.getBalance())}"
18+
19+
20+
print("Number of Checking Accounts: ", CheckingAccount.numberOfAccount)
21+
print(CheckingAccount())
22+
print(CheckingAccount(100.00))
23+
print(CheckingAccount(200.00))
24+
print("Number of Checking Accounts: ", CheckingAccount.numberOfAccount)
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
class Fruit:
2+
def __init__(self, formalin=False, name=""):
3+
self.__formalin = formalin
4+
self.name = name
5+
6+
def getName(self):
7+
return self.name
8+
9+
def hasFormalin(self):
10+
return self.__formalin
11+
12+
13+
class testFruit:
14+
def test(self, f):
15+
print("----Printing Detail----")
16+
if f.hasFormalin():
17+
print("Do not eat the", f.getName(), ".")
18+
print(f)
19+
else:
20+
print("Eat the", f.getName(), ".")
21+
print(f)
22+
23+
24+
class Mango(Fruit, testFruit):
25+
def __init__(self, name="Mango", formalin=True):
26+
super().__init__(formalin, name)
27+
28+
def __str__(self):
29+
if self.hasFormalin():
30+
return f"{self.getName()}s are bad for you"
31+
else:
32+
return f"{str(self.getName())}s are good for you"
33+
34+
35+
class Jackfruit(Fruit, testFruit):
36+
def __init__(self, name="Jackfruit", formalin=False):
37+
super().__init__(formalin, name)
38+
39+
def __str__(self):
40+
if self.hasFormalin():
41+
return f"{self.getName()}s are bad for you"
42+
else:
43+
return f"{str(self.getName())}s are good for you"
44+
45+
46+
m = Mango()
47+
j = Jackfruit()
48+
t1 = testFruit()
49+
t1.test(m)
50+
t1.test(j)
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
class Exam:
2+
def __init__(self, marks):
3+
self.marks = marks
4+
self.time = 60
5+
6+
def examSyllabus(self):
7+
return "Maths , English"
8+
9+
def examParts(self):
10+
return "Part 1 - Maths\nPart 2 - English\n"
11+
12+
13+
class ScienceExam(Exam):
14+
def __init__(self, marks, time, *info):
15+
super().__init__(marks)
16+
self.time = time
17+
self.lst_info = []
18+
self.var = 2
19+
for i in info:
20+
self.var += 1
21+
self.lst_info.append(i)
22+
23+
def examSyllabus(self):
24+
sub_list = super().examSyllabus()
25+
for i in self.lst_info:
26+
sub_list += " , " + i
27+
return sub_list
28+
29+
def examParts(self):
30+
var = super().examParts()
31+
counter = 3
32+
33+
for i in self.lst_info:
34+
var += f"part {str(counter)} - {i}\n"
35+
counter += 1
36+
return var
37+
38+
def __str__(self):
39+
return f"Marks: {str(self.marks)} Time: {str(self.time)} Number of Parts: {str(self.var)}"
40+
41+
42+
engineering = ScienceExam(100, 90, "Physics", "HigherMaths")
43+
print(engineering)
44+
print("----------------------------------")
45+
print(engineering.examSyllabus())
46+
print(engineering.examParts())
47+
print("==================================")
48+
architecture = ScienceExam(100, 120, "Physics", "HigherMaths", "Drawing")
49+
print(architecture)
50+
print("----------------------------------")
51+
print(architecture.examSyllabus())
52+
print(architecture.examParts())
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
class Shape3D:
2+
pi = 3.14159
3+
4+
def __init__(self, name="Default", radius=0):
5+
self._area = 0
6+
self._name = name
7+
self._height = "No need"
8+
self._radius = radius
9+
10+
def calc_surface_area(self):
11+
return 2 * Shape3D.pi * self._radius
12+
13+
def __str__(self):
14+
return "Radius: " + str(self._radius)
15+
16+
17+
class Sphere(Shape3D):
18+
def __init__(self, name, radius):
19+
super().__init__(name, radius)
20+
print(f"Shape name: {self._name} Area Formula: 4*pi*r*r")
21+
22+
def calc_surface_area(self):
23+
self._area = 4 * Shape3D.pi * self._radius * self._radius
24+
return self._area
25+
26+
def __str__(self):
27+
return f"Radius: {str(self._radius)} Height: {str(self._height)}\nArea: {str(self._area)}"
28+
29+
30+
class Cylinder(Shape3D):
31+
def __init__(self, name="Cylinder", radius=0, height=0):
32+
super().__init__(name, radius)
33+
print(f"Shape name: {str(self._name)} Area Formula: 2*pi*r*(r+h)")
34+
self._height = height
35+
36+
def calc_surface_area(self):
37+
self._area = 2 * Shape3D.pi * self._radius * (self._radius + self._height)
38+
return self._area
39+
40+
def __str__(self):
41+
return f"Radius: {str(self._radius)} Height: {str(self._height)}\nArea: {str(self._area)}"
42+
43+
44+
sph = Sphere("Sphere", 5)
45+
print("----------------------------------")
46+
sph.calc_surface_area()
47+
print(sph)
48+
print("==================================")
49+
cyl = Cylinder("Cylinder", 5, 10)
50+
print("----------------------------------")
51+
cyl.calc_surface_area()
52+
print(cyl)
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
class PokemonBasic:
2+
def __init__(self, name="Default", hp=0, weakness="None", type="Unknown"):
3+
self.name = name
4+
self.hit_point = hp
5+
self.weakness = weakness
6+
self.type = type
7+
8+
def get_type(self):
9+
return "Main type: " + self.type
10+
11+
def get_move(self):
12+
return "Basic move: " + "Quick Attack"
13+
14+
def __str__(self):
15+
return (
16+
"Name: "
17+
+ self.name
18+
+ ", HP: "
19+
+ str(self.hit_point)
20+
+ ", Weakness: "
21+
+ self.weakness
22+
)
23+
24+
25+
class PokemonExtra(PokemonBasic):
26+
def __init__(
27+
self,
28+
name="Defalut",
29+
hp=0,
30+
weakness=None,
31+
type=None,
32+
secondary=None,
33+
*extra_moves,
34+
):
35+
super().__init__(name, hp, weakness, type)
36+
self.secondary = secondary
37+
self.extra_moves = extra_moves
38+
39+
self.move_lst = list(self.extra_moves)
40+
self.var1 = []
41+
self.var2 = ""
42+
for i in self.extra_moves:
43+
self.var1 = list(i)
44+
self.var2 += ", ".join(self.var1)
45+
46+
def get_type(self):
47+
if self.secondary == None:
48+
return f"Main type: {self.type}"
49+
else:
50+
return f"Main type: {self.type} Secondary type: {self.secondary}"
51+
52+
def get_move(self):
53+
if len(self.extra_moves) == 0:
54+
return "Basic move: Quick Attack"
55+
else:
56+
return f"Basic move: Quick Attack\nOther moves: {str(self.var2)}"
57+
58+
59+
print("\n------------Basic Info:--------------")
60+
pk = PokemonBasic()
61+
print(pk)
62+
print(pk.get_type())
63+
print(pk.get_move())
64+
print("\n------------Pokemon 1 Info:-------------")
65+
charmander = PokemonExtra("Charmander", 39, "Water", "Fire")
66+
print(charmander)
67+
print(charmander.get_type())
68+
print(charmander.get_move())
69+
print("\n------------Pokemon 2 Info:-------------")
70+
charizard = PokemonExtra(
71+
"Charizard", 78, "Water", "Fire", "Flying", ("Fire Spin", "Fire Blaze")
72+
)
73+
print(charizard)
74+
print(charizard.get_type())
75+
print(charizard.get_move())
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
class Team:
2+
def __init__(self, name):
3+
self.name = "default"
4+
self.total_player = 5
5+
6+
def info(self):
7+
print("We love sports")
8+
9+
10+
class FootBallTeam(Team):
11+
def __init__(self, name):
12+
super().__init__(name)
13+
self.name = name
14+
self.total_player = 11
15+
16+
def info(self):
17+
print(f"Our name is {self.name}\nWe play Football")
18+
super().info()
19+
20+
21+
class CricketTeam(Team):
22+
def __init__(self, name):
23+
super().__init__(name)
24+
self.name = name
25+
self.total_player = 11
26+
27+
def info(self):
28+
print(f"Our name is {self.name}\nWe play Cricket")
29+
super().info()
30+
31+
32+
class Team_test:
33+
def check(self, tm):
34+
print("=========================")
35+
print("Total Player:", tm.total_player)
36+
tm.info()
37+
38+
39+
f = FootBallTeam("Brazil")
40+
c = CricketTeam("Bangladesh")
41+
test = Team_test()
42+
test.check(f)
43+
test.check(c)

0 commit comments

Comments
 (0)