Was ist Janken überhaupt? ?? Goo, Choki und Par werden voneinander ausgewählt, um das Ergebnis zu bestimmen. Dieses Mal werden wir programmatisch mit dem Spieler kämpfen. Goo Rock Choki-Papier Par Schere Spielen Sie mit. (Im Programm spielt Rand, der Zufallszahlen zurückgibt, eine aktive Rolle, wird aber später sein.)
Substitution durch Eingabe
p 'rock-paper-scissors'
player=gets
↑ Bitten Sie sie, zwischen Stein, Papier und Schere zu wählen Es ist auch wichtig, mit Rechtschreibfehlern von Spielern umzugehen
Bestimmt durch eine Zufallszahl.
program_hand=rand(3)
↑ program_hand gibt 0, 1, 2 als Zufallszahlen zurück.
Für Menschen ist die Zeichenbezeichnung Rock-Paper-Scissors leicht zu verstehen, aber aus dem Programm (Maschine) sind die Zahlen leichter zu verstehen als die Zeichen, wie dies mit den Zufallszahlen 0, 1 und 2 geschehen ist.
Daher werden bei den beiden Spielern (Spieler, Programm), die Janken spielen, die Hände durch Zahlen und Buchstaben dargestellt.
0 Goo Rock 1 Choki-Papier 2 par Schere
if program_hand==0
program="rock"
elsif program_hand==1
program="paper"
elsif program_hand==2
program="scissors"
end
if player=="rock"
player_hand=0
elsif player=="paper"
player_hand=1
elsif player=="scissors"
player_hand=2
end
Hier kommt der bedingte Zweig Verwenden Sie die if-Anweisung
if player_hand==program_hand
p 'draw'
elsif ((player_hand==0 and program_hand==2) or (player_hand==1 and program_hand==0) or (player_hand==2 or program_hand==0))and a==1
p 'you win'
elsif
p 'you lose'
end
Beim Schreiben des Ausdrucks der Bedingung kann die Logik kontinuierlich herauskommen. (Und und oder) Es scheint von der Überlegenheit der Logik die Rede zu sein, aber es ist schwierig. Es ist schnell, einfach und einfach, die Person, die Sie berechnen möchten, in Klammern zu setzen.
Sie sollen zwischen Stein, Papier und Schere wählen, Wie gehen Sie mit anderen Eingaben um? ??
one more please Anzeigen
Lassen Sie eine Variable namens a erscheinen. Anfangswert 0 Ersetzen Sie a = 1 nur, wenn Stein, Papier und Schere eingegeben werden.
Beurteilung mit a
↓ Fertigstellung
p 'rock-paper-scissors'
player=gets
a=0
if player=="rock"
player_hand=0
a=1
elsif player=="paper"
player_hand=1
a=1
elsif player=="scissors"
player_hand=2
a=1
end
program_hand=rand(3)
if program_hand==0
program="rock"
elsif program_hand==1
program="paper"
elsif program_hand==2
program="scissors"
end
if a==0
p 'one more please'
elsif player_hand==program_hand
p 'draw'
elsif ((player_hand==0 and program_hand==2) or (player_hand==1 and program_hand==0) or (player_hand==2 or program_hand==0))and a==1
p 'you win'
elsif
p 'you lose'
end
p "player",player,"program",program
Recommended Posts