go语言 猜数字小游戏

编写思路
//1.创建随机数种子
//2.定义个切片,生成一个三次随机值,给切片赋值
//3.定义个一个username 切片、num int类型、 falg int类型为0
//4.for 循环输入一个三位数,进行判断如果大于100 小雨999 认为合法输入,跳出for,否则提示输入错误
//5.将输入的数,进行取整、取余 、赋值给usernum 切片的每个元素
//6.for循环进行两个切片的元素对比,并提示大小或者相等,如果相当flag 进行+1
//7.判断flag的值是否等于3,如果等于3,代表两个切片的值相同,跳出for循环,否则重置flag的值

package main

import (
	"fmt"
	"math/rand"
	"time"
)
func main() {
	//创建随机数种子
	rand.Seed(time.Now().UnixNano())
	//生成100 - 999 的随机数
	//random := rand.Intn(900) + 100
	random := make([]int,3)
	random[0] = rand.Intn(9)+1
	random[1] = rand.Intn(10)
	random[2] = rand.Intn(10)
	fmt.Println(random)
	usernum := make([]int,3)
	var num int
	var flag int=0
	for {
		for {
			fmt.Println("请输入一个三位数:")
			fmt.Scan(&num)
			if num >= 100 && num <=999{
				break
			}
			fmt.Println("输入错误,请重新输入.")
		}
		usernum[0] = num / 100
		usernum[1] = num / 10 % 10
		usernum[2] = num % 10
		for i:= 0 ; i < 3;i ++ {
			if usernum[i] > random[i]{
				fmt.Printf("请输入的第%d位数太大了\n",i+1)
			} else if usernum[i] < random[i] {
				fmt.Printf("请输入的第%d位数太小了\n",i+1)
			} else {
				fmt.Printf("恭喜,您输入的第%d位数相同\n",i+1)
				flag++
			}
		}
		if flag == 3 {
			break
		} else {
			flag = 0
		}
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
### 回答1: 好的,下面是用golang语言编写的一个数字大小的程序的代码: ```go package main import ( "fmt" "math/rand" "time" ) func main() { // 初始化随机数种子 rand.Seed(time.Now().Unix()) // 生成一个 0-99 的随机数 number := rand.Intn(100) // 定义测次数计数器 count := 0 // 循环数字,直到对为止 for { // 提示用户输入数字 fmt.Print("请输入一个 0-99 的整数:") // 读取用户输入 var guess int _, err := fmt.Scanf("%d", &guess) if err != nil { fmt.Println("输入无效,请输入一个整数。") continue } // 判断测结果 if guess < number { fmt.Println("小了。") count++ } else if guess > number { fmt.Println("大了。") count++ } else { count++ fmt.Printf("对了!你用了 %d 次机会。\n", count) break } } } ``` 这个程序会生成一个 0-99 的随机数,然后提示用户输入一个数字。程序会根据用户输入的数字与随机数的大小关系给出相应的提示,然后再次提示用户输入数字。直到用户对为止,程序才会输出测次数并结束运行。 ### 回答2: package main import ( "fmt" "math/rand" "time" ) func main() { rand.Seed(time.Now().UnixNano()) target := rand.Intn(100) // 生成0-99之间的随机数字 fmt.Println("数字游戏开始,请输入一个0-99的整数:") var guess int for { _, err := fmt.Scanf("%d", &guess) if err != nil { fmt.Println("输入错误,请输入一个有效的整数:") continue } if guess < target { fmt.Println("太小了,请继续:") } else if guess > target { fmt.Println("太大了,请继续:") } else { fmt.Println("恭喜对了!") break } } } 这个程序使用了golang语言来编写一个数字大小的游戏。在游戏开始之前,会生成一个0-99之间的随机数作为目标数字。然后通过用户的输入来测这个数字,如果测的数字小于目标数字,程序会提示"太小了,请继续:",如果测的数字大于目标数字,程序会提示"太大了,请继续:",直到测的数字等于目标数字时,程序会提示"恭喜对了!"并结束游戏

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cloud孙文波

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值