package main
// 引入我们将要用到的基本库 import ( "bufio" "fmt" "math/rand" "os" "strconv" "strings" "time" // "golang.org/x/text/number" )
func main() { var maxNum int fmt.Println("Please input your maxNum") fmt.Scanln(&maxNum) //输入限制数 rand.Seed(time.Now().UnixNano()) //可写可不写 secretNumber := rand.Intn(maxNum) //把随机数限定在100以内 // fmt.Println("The secret number is ", secretNumber)
fmt.Println("Please input your guess")
reader := bufio.NewReader(os.Stdin) //读取系统输入文件stdin 然后用bufio.NewReader方法吧文件转换为reader变量
for {
input, err := reader.ReadString('\n') //读取一行输入
if err != nil {
fmt.Println("An error occurred while reading input. Please try again", err)
continue //错误检测
}
input = strings.Trim(input, "\r\n") //去掉换行符 去掉转义符\r
guess, err := strconv.Atoi(input) //转换为数字
if err != nil {
fmt.Println("Invalid input. Please enter an integer value")
continue //错误检测
}
//逻辑比较
fmt.Println("You guess is", guess)
if guess > secretNumber {
fmt.Println("Your guess is bigger than the secret number. Please try again")
} else if guess < secretNumber {
fmt.Println("Your guess is smaller than the secret number. Please try again")
} else {
fmt.Println("Correct, you Legend!")
break
}
}
}