golang rock paper scissors code example
Example: rock paper scissors in golang
package main
import (
"fmt"
"math/rand"
)
func rpsGame() int {
won := false
turns := 0
for !won {
fmt.Println("Rock Paper Scissors")
fmt.Println("1=Rock 2=Paper 3=Scissors")
fmt.Println("VVV Enter VVV")
choice := 10
for !(choice < 4 && choice > 0) {
fmt.Println("VVV")
fmt.Scanln(&choice)
}
pchoice := rand.Intn(4)
for pchoice == 0 {
pchoice = rand.Intn(4)
}
fmt.Println(pchoice)
if pchoice-choice == 1 || choice-pchoice == 2 {
fmt.Println("You lose")
} else if choice-pchoice == 1 || pchoice-choice == 2 {
fmt.Println("you win!!")
won = true
} else if choice-pchoice == 0 || pchoice-choice == 0 {
fmt.Println("TIE!!")
}
turns++
}
return turns
}
func main() {
terminate := false
for !terminate {
fmt.Print(rpsGame())
fmt.Println(" turns to win")
fmt.Println("play again? 1 = yes, anything else is no")
g := 0
fmt.Scanln(&g)
if g != 1 {
terminate = true
}
}
}