G
enby!

Снова боулинг? Да, но на Python!

Четыре пары супругов играли в боулинг. Диана выиграла три очка, Лиза — два, Ника — четыре, а Анжела — одно. Семен выиграл столько же очков, сколько и его жена, Петр — вдвое больше своей жены, Николай — в три раза больше своей жены, а Константин — в 4 раза больше своей жены. Всего было выиграно 32 очка. Как зовут жену Николая? Подписывайтесь на мой телеграм канал: https://t.me/littlemathlovers
Здесь будут публиковаться видео, а так же будет много практических задач. import itertools all_points = 32 wife_points = 10 class Wife: _name = "" _score = 0 def __init__(self, name, score): self.name = name self.score = score class Hussband: _name = "" _times = 0 def __init__(self, name, times): self.name = name self.times = times def summary(wife_list, husband_list): if len(wife_list) != len(husband_list): return 0 if len(wife_list) == 0 or len(husband_list) == 0: return 0 sum = 0 for idx,x in enumerate(wife_list): sum += wife_list[idx].score * husband_list[idx].times return sum wife_list = [Wife("Diana",3), Wife("Liza", 2), Wife("Nika", 4), Wife("Angela", 1)] hussband_list = [Hussband("Semion",1),Hussband("Petr",2), Hussband("Nikolai",3),Hussband("Konstantin",4)] permutations = itertools.permutations(hussband_list) all_permutations = [list(p) for p in permutations] for p in all_permutations: if summary(wife_list, p) == 22: for idx, x in enumerate(p): print(f"{p[idx].name} - {wife_list[idx].name}")

Смотрите также