Я довольно новичок в python и программировании как таковой, и я написал небольшую программу, которая вычисляет десятки двух игроков.Изменение кода, избегающего инструкций break
Игра предназначена для ввода имени игрока и при каждом вводе имени игрока его счет увеличивается на одну точку. Игрок выигрывает, если: 1.they набрал 10 очков с разницей не менее 2 очков между каждым из игроков. 2. Они набрал 7 очков, а счет противника 0.
Итак, я написал программу для реализации того же, но проблема в том, что я начинаю, я считаю, что это можно сделать лучше (используя лучше кодирования практики, более вещий или более эффективным способом)
Надеясь некоторых экспертов будет направлять меня к тому, что я делаю неправильно: Вот мой код:
player1 = input("Enter name for Player1")
player2 = input("Enter name for Player2")
score1=0
score2=0
print ("Score for Player1 is: %d,Score for player2 is :%d" %(score1,score2))
while (score1 != 10) and (score2 != 10):
player =input("enter name for player")
if player is player1:
score1=score1+1
if player is player2:
score2=score2+1
print ("Score for Player1 is: %d,Score for player2 is :%d" %(score1,score2))
if(score1==7 and score2==0):
print("Player1 wins")
break
if(score2==7 and score1==0):
print("Player2 wins")
break
if (score1==10 and (score1-score2)>2):
print("Player1 wins")
break
if (score2==10 and (score2-score1)>2):
print("Player2 wins")
break
Не связанная с программой программа состоит в том, что в правилах игры есть лазейка, позволяющая ни одному игроку не побеждать: если это '10: 9', то игра будет продолжаться вечно. Вероятно, вы захотите проверить 'score> = 10'. Кроме того, правило '' 7: 0' выигрывает ', кажется произвольным. Из любопытства: существует ли такое правило подсчета для реальной игры? – cfi
@cfi код ломается, если вы пытаетесь сыграть в 10: 9, Также я не уверен, существуют ли они для настоящей игры. – RamyaV