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

原文发布于微信公众号 - Golang语言社区(Golangweb)

原文发表时间:2016-01-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏lonelydawn的前端猿区

绚丽的javascript拾色器(不兼容IE8及以下)

一切尽在注释中 html节点 <div id="colorpicker" style="display:inline-block;"> <input clas...

46070
来自专栏编程微刊

jQuery文档对象模型DOM的实际应用

DOM 在 JavaScript 课程中我们详细的探讨过,它是一种文档对象模型。方便开发者对 HTML 结构元素内容进行展示和修改。在 JavaScript 中...

10630
来自专栏HTML5学堂

一个setInterval的小问题

一个setInterval的小问题 HTML5学堂:在制作页面动画效果中,很多情况都会用到定时器,setInterval则是计时器的一种,可按照指定的周期,不停...

36290
来自专栏云端架构

【云端架构】前端必备常用CSS语法

属性(property)是你希望设置的样式属性(style attribute)。每个属性有一个值。属性和值被冒号分开。

36780
来自专栏JadePeng的技术博客

MarkDown 常用语法教程

MarkDown 语法说明 [TOC] 标题 标题1 ====== 标题2 ----- ## 大标题 ### 小标题 #### 小标题 列表 无序列表 ...

28040
来自专栏数据小魔方

动态图表10|可选折线图(复选框)

今天要跟大家分享的是动态图表10——可选折线图(复选框)。 本篇推送主要向大家介绍如何使用复选框控制多维图表。涉及到的核心技巧主要有:复选框;if+or函数;图...

31840
来自专栏python3

tkinter -- Label颜色,长宽设置

13610
来自专栏GreenLeaves

JavaScript之Style属性学习

当CSS使用伪类开始侵入DOM和JavaSCript所控制着的行为层时,DOM和JavaScript也使用他们的一系列样式去控制表现层,这篇随笔主要说的就是利用...

23180
来自专栏武培轩的专栏

剑指Offer-滑动窗口的最大值

题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个...

502100
来自专栏落花落雨不落叶

block,inline,inline-block的区别

28280

扫码关注云+社区

领取腾讯云代金券