#RoShamBo
import random
count=0
while count<2 and count> -2:
compnum=random.randint(0,2)
usernum=int(input("Scissor(0), Rock(1), Paper(2)"))
if compnum==0:
if usernum==0:
print("Draw")
elif usernum==1:
print("Win")
count=count+1
elif usernum==2:
print("Lose")
count=count-1
elif compnum==1:
if usernum==0:
print("Lose")
count=count-1
elif usernum==1:
print("Draw")
elif usernum==2:
print("Win")
count=count+1
elif compnum==2:
if usernum==0:
print("Win")
count=count+1
elif usernum==1:
print("Lose")
count=count-1
elif usernum==2:
print("Draw")
if count>2:
print("You won more than 2 times")
else:
print("The computer won more than 2 times")
Die Ausgabe ist durcheinander - für eine Sache, wird es nicht den Benutzer gewinnen lassen. Außerdem werden die Zahlen nicht richtig berechnet. Dies war eine Laboraufgabe für eine Klasse in Einführung in Python, aber der Professor, glaube ich, schrieb den Code falsch. Hier ist ein Beispiel gebrochen Ausgabe:Rock, Papier, Schere lässt Benutzer nicht gewinnen
============== RESTART: C:/Users/FieryAssElsa/Desktop/Broken.py ==============
Scissor(0), Rock(1), Paper(2)2
Draw
Scissor(0), Rock(1), Paper(2)2
Win
Scissor(0), Rock(1), Paper(2)2
Draw
Scissor(0), Rock(1), Paper(2)2
Lose
Scissor(0), Rock(1), Paper(2)2
Win
Scissor(0), Rock(1), Paper(2)2
Win
The computer won more than 2 times
Können Sie bitte näher erläutern? –
Sie werden * immer * sehen 'Der Computer hat mehr als 2 mal gewonnen 'weil die Schleife so lange dauert, bis' count' 2 oder -2 ist und dann die Bedingung erreicht. Nun, da "count" 2 oder -2 ist und 2 nicht größer als 2 oder -2 ist, geht es in den else Block. – Li357