猜數字遊戲
需求:要求用戶輸入3位數,與系統隨機產生的3位數,進行每一位比較,如果不相等,提示用戶輸入的數字是大了還是小了,如果相等,提示一致。最後每一位上的數字都一致,退出程序。
package main
import (
"math/rand"
"time"
"fmt"
)
func main() {
rand.Seed(time.Now().UnixNano())
s := make([]int, 3)
s[0] = rand.Intn(9) + 1
s[1] = rand.Intn(10)
s[2] = rand.Intn(10)
var num int
var cons int
temp := make([]int, 3)
for {
fmt.Println("請輸入一個三位數")
fmt.Scan(&num)
if num >= 100 && num <= 999 {
temp[0] = num / 100
temp[1] = num / 10 % 10
temp[2] = num % 10
for i := 0; i < 3; i++ {
if s[i] > temp[i] {
fmt.Printf("第%d位的數字小了\n", i+1)
} else if s[i] < temp[i] {
fmt.Printf("第%d位的數字大了\n", i+1)
} else {
cons++
fmt.Printf("第%d位的數字輸入正確\n", i+1)
}
}
if cons==3{
fmt.Println("答案正確,遊戲結束")
break
}else {
cons=0
}
} else {
fmt.Println("輸入錯誤")
}
}
}