go语言实现猜数字小游戏的方法

本文实例讲述了go语言实现猜数字小游戏的方法。分享给大家供大家参考。具体分析如下:

随机生成一个数字,输入一个数字看是否匹对,匹配则结速,反之提示是大了还是小了

package main

import (

    "bufio"

    "fmt"

    "math/rand"

    "os"

    "strconv"

    "time"

)

var (

    endNum int //设置生成数的范围

)

func main() {

    i := createRandomNumber(endNum)

    //fmt.Println("生成规定范围内的整数:", i)    //本句调试用

    fmt.Println("请输入整数,范围为:0-", endNum)

    flag := true

    reader := bufio.NewReader(os.Stdin)

    for flag {

        data, _, _ := reader.ReadLine()

        command, err := strconv.Atoi(string(data)) //string to int,并作输入格式判断

        if err != nil {

            fmt.Println("格式不对,请输入数字")

        } else {

            fmt.Println("你输入的数字:", command)

            if command == i {

                flag = false

                fmt.Println("恭喜你,答对了~")

            } else if command < i {

                fmt.Println("你输入的数字小于生成的数字,别灰心!再来一次~")

            } else if command > i {

                fmt.Println("你输入的数字大于生成的数字,别灰心!再来一次~")

            }

        }

    }

}

func init() {

    endNum = 10

}

//生成规定范围内的整数

//设置起始数字范围,0开始,endNum截止

func createRandomNumber(endNum int) int {

    r := rand.New(rand.NewSource(time.Now().UnixNano()))

    return r.Intn(endNum)

}

希望本文所述对大家的Go语言程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。