[LINUX] Janken in Ruby

Janken in Ruby (Stein-Papier-Schere)

1. Struktur von Janken

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.)

2. Auswahl der Spielerhand

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

3. Manuelle Programmauswahl

Bestimmt durch eine Zufallszahl.

program_hand=rand(3)

↑ program_hand gibt 0, 1, 2 als Zufallszahlen zurück.

4. Organisieren

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

5. Gewinnen oder verlieren Sie die Janken

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.

6. Reaktion auf Rechtschreibfehler

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

Janken in Ruby
Janken
Ausführen von Systembefehlen in Ruby
Unterschiede zwischen Ruby und Python im Umfang
Zeichne mit PyCall ein Herz in Ruby
In Ruby ersetzt inspect nicht to_s
Versuchen Sie etwas wie Python für-else in Ruby
Wie schreibe ich Ruby to_s in Python
GNU GLOBAL (gtags) + α in Go, Ruby, Python
Mach ein Janken-Spiel in einer Zeile (Python)
Aufzeichnung des in Ruby on Rails wiedergeborenen Pythonisten
Symbolischer Gruppenname für reguläre Ausdrücke in Python / Ruby
Gruppierungskombination in Python / Ruby / PHP / Golang (Go)