class Employee:
def __init__(self, name, salary, projects):
self.name = name
self.salary = salary
self.projects = projects
self.hours_worked = 0
def add_project(self, project):
self.projects.append(project)
def work(self, hours):
self.hours_worked += hours
def get_bonus(self):
return self.salary * 0.1
class Developer(Employee):
def work(self, hours):
self.hours_worked += hours * 1.5
class Manager(Employee):
def get_bonus(self):
return self.salary * 0.2
employee = Employee("John", 50000, ["Project A"])
developer = Developer("Alice", 70000, ["Project B", "Project C"])
manager = Manager("Bob", 90000, ["Project D"])
employee.work(10)
developer.work(10)
manager.work(10)
At the end of execution of the above script, what is value of the following expressions?
| employee.hours_worked: | ||
| developer.hours_worked: | ||
| manager.hours_worked: |
Define a class, Smartphone, that inherits from Device.
In the Smartphone class, override the use method so that reduces its battery by hours * 7 and adds hours to usage_hours.
Create an instance of Smartphone, call its use method.
class Attendance:
pass
class Employee:
pass
def create(name, data):
em = Employee()
em.name, em.attendance = name, []
for date, attended in data:
att = Attendance()
att.date, att.present = date, attended
em.attendance.append(att)
return em
def check(employee):
total = 0
for att in employee.attendance:
if att.present:
total += int(att.date.split("-")[-1])
return total
data = ("2025-01-04", True), ("2025-01-05", True), ("2025-01-06", False)
employee = create("Mar", data)
res = check(employee)
At the end of execution of the above script, what is value of?
| res: | ||
| employee.attendance[0].date: |
class Fighter:
def __init__(self, name, strength, moves):
self.name = name
self.strength = strength
self.moves = moves
self.health = 100
def train(self, new_move):
self.moves.append(new_move)
class Boxer(Fighter):
def punch(self, opponent):
opponent.health -= 10
class Wrestler(Fighter):
def grapple(self, opponent):
opponent.health -= 15
boxer = Boxer("Rocky", 80, ["jab", "cross"])
wrestler = Wrestler("Hulk", 90, ["slam", "suplex", "chokehold"])
boxer.train("uppercut")
wrestler.grapple(boxer)
Given the above script, what is value of the following expressions?
| boxer.moves[-1]: | ||
| boxer.health: | ||
| wrestler.moves[0]: | ||
| wrestler.strength: |
Define a class, Car, that inherits from Vehicle.
In the Car class, override the __str__ method so that it returns a string with car's brand and mileage.
In the Car class, override the refuel method so that it increases the car's fuel by liters * 1.2
Create an instance of Car, call its refuel method, and print the car.
class Student:
pass
class University:
pass
def register(uni, data):
for grade, names in data.items():
if not names:
continue
for name in names:
st = Student()
st.name, st.grade = name, grade
uni.students.append(st)
def get_student(university, grade):
for st in university.students:
if st.grade == grade:
return st
data = {8: ['Ariana', 'Dafina'], 9: ['Besnik'], 7: []}
university = University()
university.name, university.students = "Ise Boletini", []
register(university, data)
first = get_student(university, 9)
second = get_student(university, 5)
At the end of execution of the above script, what is value of?
| first.name: | ||
| second: |
Complete execution flow of the following program
class Student: def __init__(self, name, grade, credits): self.name = name self.grade = grade self.credits = credits self.courses = [] def enroll(self, course): self.courses.append(course) class GraduateStudent(Student): def research(self, hours): self.credits = self.credits + hours * 2 class Undergraduate(Student): def study(self, hours): self.credits = self.credits + hours grad = GraduateStudent("Alice", 90, 30) undergrad = Undergraduate("Bob", 85, 20) grad.enroll("ML") grad.research(5) undergrad.study(10)
Complete execution flow of the following program
class Volume: def __init__(self, liters): self.liters = liters def __add__(self, other): print('add') return Volume(self.liters + other.liters) def __truediv__(self, divisor): print('div') return Volume(self.liters / divisor) v1 = Volume(10) v2 = Volume(5) v3 = v1 + v2 v4 = v1 / 2 v4.liters
add div >>>
Complete execution flow of the following program
class Fighter: def __init__(self, name, strength, moves): self.name = name self.strength = strength self.moves = moves self.health = 100 def train(self, new_move): self.moves.append(new_move) class Boxer(Fighter): def punch(self, opponent): opponent.health -= 10 class Wrestler(Fighter): def grapple(self, opponent): opponent.health = opponent.health - 15 boxer = Boxer("Rocky", 80, ["jab", "cross"]) wrestler = Wrestler("Hulk", 90, ["slam", "suplex", "chokehold"]) boxer.train("uppercut") wrestler.grapple(boxer)
class Fighter:
def __init__(self, name, strength, moves):
self.name = name
self.strength = strength
self.moves = moves
self.health = 100
def train(self, new_move):
self.moves.append(new_move)
def punch(self, opponent):
opponent.health -= 5
def grapple(self, opponent):
opponent.health = opponent.health - 5
class Boxer(Fighter):
def punch(self, opponent):
opponent.health -= 10
class Wrestler(Fighter):
def grapple(self, opponent):
opponent.health = opponent.health - 10
fighter = Fighter("Adesanya", 70, ["feint + counter right", "left hook"])
boxer = Boxer("Rocky", 80, ["jab", "cross"])
wrestler = Wrestler("Hulk", 90, ["slam", "suplex", "chokehold"])
fighter.punch(boxer)
boxer.punch(wrestler)
wrestler.punch(fighter)
At the end of execution of the above script, what is value of the following expressions?
| fighter.health: | ||
| boxer.health: | ||
| wrestler.health: |