P ython p rogramming e xercises


E X E R C I S E # 2 2 : R O C K , P A P E R , S C I S S O R S



Yüklə 1,51 Mb.
Pdf görüntüsü
səhifə58/124
tarix14.05.2023
ölçüsü1,51 Mb.
#113537
1   ...   54   55   56   57   58   59   60   61   ...   124
PythonProgrammingExercisesGentlyExplained

E X E R C I S E # 2 2 : R O C K , P A P E R , S C I S S O R S
rpsWinner('rock', 'paper')
→ 
'player2' 
Rock, paper, scissors is a popular hand game for two players. The two players simultaneously 
choose one of the three possible moves and determine the winner of the game: rock beats scissors, 
paper beats rock, and scissors beats paper. This exercise involves determining a game’s outcome given 
the moves of the two players. 
Exercise Description 
Write a rpsWinner() function with parameters player1 and player2. These parameters are 
passed one of the strings 'rock', 'paper', or 'scissors' representing that player’s move. If 
this results in player 1 winning, the function returns 'player one'. If this results in player 2 
winning, the function returns 'player two'. Otherwise, the function returns 'tie'. 
These Python assert statements stop the program if their condition is False. Copy them to 
the bottom of your solution program. Your solution is correct if the following assert statements’ 
conditions are all True: 
assert rpsWinner('rock', 'paper') == 'player two' 
assert rpsWinner('rock', 'scissors') == 'player one' 
assert rpsWinner('paper', 'scissors') == 'player two' 
assert rpsWinner('paper', 'rock') == 'player one' 
assert rpsWinner('scissors', 'rock') == 'player two' 
assert rpsWinner('scissors', 'paper') == 'player one' 
assert rpsWinner('rock', 'rock') == 'tie' 
assert rpsWinner('paper', 'paper') == 'tie' 
assert rpsWinner('scissors', 'scissors') == 'tie' 
Try to write a solution based on the information in this description. If you still have trouble 
solving this exercise, read the Solution Design and Special Cases and Gotchas sections for 
additional hints. 
Prerequisite concepts: Boolean operators, elif statements 
Solution Design 
Similar to the solutions for Exercise #20, ―Leap Year‖ and #21, ―Validate Date‖, the solution for 


Python Programming Exercises, Gently Explained 
69 
this exercise is a set of if-elif-else statements. The player1 parameter contains a string of the 
first player’s move and the player2 parameter contains a string of the second player’s move. These 
strings will be one of 'rock', 'paper', and 'scissors'. You’ll want to use comparison 
operators to check the value of both players and join them with an and operator. For example, the 
expression player1 == 'rock' evaluates to True if the first player went with rock, and the 
expression player2 == 'paper' evaluates to True if the second player went with paper. This 
means that in the expression player1 == 'rock' and player2 == 'paper' evaluates to 
True
if both sides of the and operator evaluated to True. In this case, the second player is the 
winner and the function should return 'player2'. 

Yüklə 1,51 Mb.

Dostları ilə paylaş:
1   ...   54   55   56   57   58   59   60   61   ...   124




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin