|
发表于 2023-10-11 20:50:26
|
显示全部楼层
修改后的代码如下所示:
- # introduce the game and rules briefly
- print("Three games, each game guess a number between 1 and 12.")
- print("The game will end if you guess the right number or you run out of turns, each game you can guess 3 times.")
- # Have each player enter their name
- player1 = input("Enter the name of the two players: ")
- player2 = input("Enter the name of the other player: ")
- win1 = 0
- win2 = 0
- # play 3 games total
- for i in range(3):
- # pick a random number between 1 and 12
- import random
- correct_num = random.randint(1, 12)
- print(correct_num)
- guess = correct_num + 1
- count = 1
- guessed_number = []
- while guess != correct_num and count <= 6:
- # take turns to guess the number
- if count % 2 == 0:
- player = player1
- else:
- player = player2
- guess = float(input(player + " guess a number between 1 and 12: "))
- guessed_number.append(guess)
- print("You have already guessed: ", guessed_number)
- # if one player wins, the game ends
- if guess == correct_num:
- print(player, "congratulations, you are right!")
- count += 6
- if player == player1:
- win1 += 1
- else:
- win2 += 1
- else:
- # tell them if the guess is bigger or smaller
- if guess > correct_num:
- print(player, "your number is bigger.")
- else:
- print(player, "your number is smaller.")
- # let one player give up part way through the game
- if count < 7:
- if player == player1:
- Y = input(player2 + " Do you want to give up? [y/n]")
- else:
- Y = input(player1 + " Do you want to give up? [y/n]")
- if Y == "n":
- count += 1
- elif Y == "y":
- count += 2
- # give the hint after 4 guesses, including abandon
- if count >= 4 and guess != correct_num:
- if correct_num % 2 == 0:
- print("Hint: the correct number is even")
- else:
- print("Hint: the correct number is odd")
- # if no winner, tell them they are losers
- if count >= 6 and guess != correct_num:
- print(player1, "and", player2, "You are all losers.")
- count += 6
- if i <= 1:
- print("Now the next game begins!")
- # add an extra congratulations to the player who wins the most games
- if win1 > win2:
- print(player1, "congratulations! you win the most games!")
- elif win1 < win2:
- print(player2, "congratulations! you win the most games!")
复制代码
希望这次修改能满足你的需求。如果有任何其他问题,请随时提问!
球一个最佳答案谢谢啦!这对我非常重要!   |
|