Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions task1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
class Case:
def __init__(self, test_case_id, name, step_description, expected_result):
self.test_case_id = test_case_id
self.name = name
self.step_description = step_description
self.expected_result = expected_result

def print_test_case_info(self):
print(f"ID тест-кейса: {self.test_case_id}"
f"\nНазвание: {self.name}"
f"\nОписание шага: {self.step_description}"
f"\nОжидаемый результат: {self.expected_result}")
class ExtendedCase(Case):
def __init__(self, test_case_id, name, step_description, expected_result, precondition, environment):
self.precondition = precondition
self.environment = environment
super().__init__(test_case_id, name, step_description, expected_result)

def print_test_case_info(self):
print(f"ID тест-кейса: {self.test_case_id}"
f"\nНазвание: {self.name}"
f"\nПредусловие: {self.precondition}"
f"\nОписание шага: {self.step_description}"
f"\nОжидаемый результат: {self.expected_result}"
f"\nОкружение: {self.environment}")

case1 = ExtendedCase('1', 'Наличие кнопки Принять', '1. Открыть вкладку приёма документов 2. Проверить наличие кнопки ', 'Кнопка доступна', 'Открыть сервис', 'Яндекс Браузер')
case1.print_test_case_info()
30 changes: 30 additions & 0 deletions task2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
class Movies:
def __init__(self):
self.movies = []

def add_movie(self, movie):
self.movies.append(movie)
return self.movies

class Comedy(Movies):
def __init__(self):
super().__init__()
return f"Комедии: {self.movies}"

class Comedy(Movies):
def add_movie(self, movie):
super().add_movie(movie)
return f"Комедии: {self.movies}"

class Drama(Movies):
def add_movie(self, movie):
super().add_movie(movie)
return f"Драмы: {self.movies}"

comedy = Comedy()
print(comedy.add_movie("Большой куш'"))

drama = Drama()
print(drama.add_movie("Оружейный барон"))


47 changes: 47 additions & 0 deletions task3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
class PointsForPlace:
@staticmethod
def get_points_for_place(place):
points = 0
if place > 100:
print('Баллы начисляются только первым 100 участникам')
points = 0
elif place < 1:
print('Спортсмен не может занять нулевое или отрицательное место')
points = 0
else:
points = 101 - place

return points


class PointsForMeters:
@staticmethod
def get_points_for_meters(meters):
points = 0
if meters < 0:
print('Количество метров не может быть отрицательным')
points = 0
else:
points = meters * 0.5

return points


class TotalPoints(PointsForPlace, PointsForMeters):

def get_total_points(self, meters, place):
place_points = self.get_points_for_place(place)
meters_points = self.get_points_for_meters(meters)
self.total = place_points + meters_points
return self.total

points_for_place = PointsForPlace()
print(points_for_place.get_points_for_place(10))

points_for_meters = PointsForMeters()
print(points_for_meters.get_points_for_meters(10))

total_points = TotalPoints()
print(total_points.get_points_for_place(10))
print(total_points.get_points_for_meters(10))
print(total_points.get_total_points(100, 10))
29 changes: 29 additions & 0 deletions task4.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
class EmployeeSalary:
hourly_payment = 400

def __init__(self, name, hours, rest_days, email):
self.name = name
self.hours = hours
self.rest_days = rest_days
self.email = email

@classmethod
def get_hours(cls, name, hours, rest_days, email):
if not hours:
hours = (7 - rest_days) * 8
return cls(name, hours, rest_days, email)

@classmethod
def get_email(cls, name, hours, rest_days, email):
if email is not None:
return (cls, name, hours, rest_days, email)
else:
return f"{name}@email.com"

@classmethod
def set_hourly_payment(cls, new_payment):
cls.hourly_payment = new_payment

def salary(self):
return self.hours * self.hourly_payment

42 changes: 42 additions & 0 deletions task5.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
class Results:
def __init__(self, victories, draws, losses):
self.victories = victories
self.draws = draws
self.losses = losses

class Football(Results):
def number_of_wins(self):
return f"Футбольных побед: {self.victories}"

def number_of_draws(self):
return f"Футбольных ничьих: {self.draws}"

def number_of_losses(self):
return f"Футбольных поражений: {self.losses}"

def total_points(self):
points = 3 * self.victories + self.draws
return f"Общее количество очков: {points}"

class Hockey(Results):
def number_of_wins(self):
return f"Хоккейных побед: {self.victories}"

def number_of_draws(self):
return f"Хоккейных ничьих: {self.draws}"

def number_of_losses(self):
return f"Хоккейных поражений: {self.losses}"

def total_points(self):
points = 2 * self.victories + self.draws
return f"Общее количество очков: {points}"

football_team = Football(2, 2, 2)
hockey_team = Hockey(2,2,2)

for team in (football_team, hockey_team):
print(team.number_of_wins())
print(team.number_of_draws())
print(team.number_of_losses())
print(team.total_points())