Нужна помощь в назначении теннисной программы на конец года:
В этой задаче вы предоставите интерфейс и дисплей для теннисного матча.Вот правила подсчета теннисного матча.
• Есть два игрока.Давайте назовем их Игроком 1 и Игроком 2.
• Игроки сплачивают мяч назад и вперед, и победитель каждого ралли зарабатывает очки.
• Игра представляет собой последовательность из нескольких очков.Каждый игрок начинает с 0 очков («Любить все»), и игрок выигрывает игру, который первым достигает следующего:
- у игрока 4 очка;и
- у игрока на 2 очка больше, чем у другого игрока.
• У британцев есть умная система нумерации очков в игре.
У игрока с 0 очками есть «Любовь».Если у них есть 1 балл, они называют это «15».2 балла - это «30»;3 очка, «40».Если оба игрока имеют 3 или более очков, они называют это «Двойка».
Если у обоих игроков есть 3 или более очков, но они не связаны, то у игрока, который находится впереди, говорят, что он имеет «Преимущество».
• Набор - это последовательность игр.
Победителем сета становится первый игрок, который достигнет:
6 игр, по крайней мере, на 2 игры больше, чем у другого игрока;или
- 7 игр.
В случае, когда оба игрока связаны по 6 игр за штуку, правила меняются в отношении того, как оцениваются 13-я и решающая игры.Эта игра называется тай-брейком, и первый игрок выигрывает, набирая 7 очков, на 2 балла больше, чем другой игрок.В тай-брейке британская нумерация не используется;вместо этого счет начинается с 0-0, а очки подсчитываются в возрастающей числовой последовательности.
• Совпадение - это последовательность наборов.В мужских соревнованиях победителем матча становится первый игрок, набравший 3 сета.У женщин победителем становится первый игрок, набравший 2 сета.
Завершите функцию points_str (p1, p2), которая, учитывая p1, количество очков для Игрока 1 и p2, количество очков дляИгрок 2, возвращает строку, которая представляет британский эквивалент счета Игрока 1.Если игрок 1 имеет преимущество, верните «Adv», а если игрок 2 имеет преимущество, верните «-».
Например,
• points_str (0, 2) должно возвращать «Love».
• points_str (3, 1) должно возвращать «40».
• points_str (3, 3) должен возвращать «Двойка».
• points_str (5, 4) должен возвращать «Adv».
• points_str (4, 5) должен возвращать «-».
Напишите программу на Python, которая имитирует теннисный матч.После запроса у пользователя имен каждого игрока и его пола, программа будет отображать табло после каждого сыгранного очка.
Чтобы определить, кто выиграет следующий балл, ваша программа вызовет импортированную функцию umpire ()который возвращает целое число 1, если игрок 1 выигрывает очко, или 2, если игрок 2 выигрывает.Вы можете предположить, что umpire () никогда не возвращает ничего, кроме целого числа 1 или целого числа 2.
Программа должна завершиться, когда один из игроков выиграет матч.Выведите итоговое табло и сообщение с описанием, кто победит.Следуйте формату вывода, как показано в примерах.
Ниже приведен мой код функции.Он только вычисляет победителя первого очка и отображает его.Как правильно зациклить, чтобы он вычислял победителя игры, устанавливал и совпадал в конце концов?
Пожалуйста, помогите мне :) Спасибо!
def points_str(p1, p2):
p1setscore=0
p2setscore=0 # setting starting parameters for scorekeeping for games and
p1gamescore=0
p2gamescore=0
male_setmax=3
female_setmax=2 # setting parameters for maximum amount sets/games for male/female rules
gamemax=7
umpire()
if umpire()== 1:
p1gamescore=p1gamescore+1
else:
p2gamescore=p2gamescore+1
print p1gamescore, p2gamescore