猜数字商品流程图_有趣的猜数字游戏

在高中信息课教学中,采用新版教材讲解算法,通过自然语言、流程图和伪代码解释数学问题,包括最大公约数和一元二次方程等。设计了一款结合概率的猜数字游戏,计划在考试后讲解,并分享了游戏的流程图和Python实现,邀请学生体验,以提升算法理解能力。
摘要由CSDN通过智能技术生成

    从11月开始,小编终于如愿以偿地开始了在高中的支教生活,目前在带高一的信息课,使用2019年国家教材委员会专家委员会审核通过的新版教材。很喜欢新版的教材,简明而又不失深度。

267ec25782855b287e1b3be315624724.png9d794cf866794836cdb5da10f34750b8.png

    我目前在讲第二章算法的内容,为了方便学生理解,我更多地以数学问题举例子,许多是教材上的经典问题,每个问题我都用算法的四种描述方式—自然语言、流程图、伪代码、程序设计语言(主要用Python)—分别进行说明,比如用辗转相除法求任意两个正整数的最大公约数、求一元二次方程ax²+bx+c=0的根等等,课上还是以前三种描述方式为主,也写了简单的Python代码,在课堂的后半段让学生提前感受一下。

#辗转相除法求最大公约数m = int(input("输入第一个数m:"))print("m = ",m)n = int(input("输入第二个数n:"))print("n = ",n)if m < n:  m,n = n,mr = m % nwhile True:  if r == 0:    print("最大公约数为:",n)    break  else:    m = n    n = r    r = m % n
#求一元二次方程ax²+bx+c=0的根,为了方便演示要求根为整数def fun():    print("求一元二次方程的根")    while True:        a = int(input("请输入系数a:"))        if a == 0:            print("a是二次项系数,不能为0")            break        b = int(input("请输入系数b:"))        c = int(input("请输入系数c:"))        print(f"该一元二次方程为:{a}x**2+{b}x+{c}=0 ")        Δ = b**2 - 4*a*c        #print("Δ的值为:",Δ)        if Δ < 0:            print("该方程无实数根")        elif Δ == 0:            x = -b/2*a            print("该方程有两个相同的根,是:",int(x))        else:            x1 = (-b+Δ**0.5)/2*a            x2 = (-b-Δ**0.5)/2*a            print("该方程有两个不同的实数根,分别是:",int(x1),"和",int(x2))fun()

    昨天晚上设计了一款结合了概率的猜数字游戏,觉得还蛮有意思,等学生考完试后打算用它来讲解一下,这里把流程图和Python代码贴一下,大家也可以玩一下,点原文链接可直接下载文件,提取码1116。

    猜数字(Bulls and Cows)是一种古老的的密码破译类益智类小游戏,起源于20世纪中期,一般由两个人或多人玩,也可以由一个人和电脑玩。

8f90153a77e9797e31614106c1351556.png

import randomisGameover = ""while True:  a = random.randint(0,99)  for i in range(10):    b = int(input("你有10次机会,在[0,100)的范围内,输入猜测数:"))    if b < 0 or b >= 100:      print("不在指定范围内")      break    if a == b:      print("猜中了,一共{}次\n".format(i+1))      isGameover = input("按q结束,r重玩 /")      break    else:      print("不对")      c = abs(a - b)      if c < 10:        d = c**2        print(d)      else:        d = (c//10)+(c%10)        if d < 10:          e = d**2          print(e)        else:          e = (d//10)+(d%10)          f = e**2          print(f)  else:    print("遗憾,机会用完了。")    print("正确答案:",a)    break  if isGameover == "q":    break  elif isGameover == "r":    continue  else:    break

    希望大家能找到以最少的次数猜中目标数字的方法!:)

### 回答1: 猜数字游戏是一种经典的猜谜游戏,玩家需要根据提示猜出一个随机生成的数字。以下是猜数字游戏的功能和流程图: 功能: 1. 生成一个随机数作为答案。 2. 提供玩家猜测数字的机会。 3. 判断玩家的猜测是否正确。 4. 根据玩家的猜测结果给出相应的提示。 5. 记录玩家的游戏历史记录。 6. 提供重新开始游戏和退出游戏的选项。 流程图: 开始 -> 生成随机数 -> 玩家猜测数字 -> 判断猜测是否正确 -> 如果正确,游戏结束;如果不正确,给出提示 -> 记录游戏历史记录 -> 询问是否重新开始游戏 -> 如果是,返回到生成随机数;如果不是,结束游戏 -> 结束。 ### 回答2: 猜数字游戏是一种经典的游戏,其功能主要是让玩家通过猜测来猜出程序生成的随机数字。其流程图如下: 1. 开始游戏:程序生成一个随机数,设定一个数字范围。 2. 输入猜测:玩家输入一个数字作为猜测。 3. 判断猜测:程序将玩家的猜测与生成的随机数进行比较。 4. 猜测正确:如果玩家的猜测与随机数相等,则提示玩家猜测正确,游戏结束。 5. 猜测错误:如果玩家的猜测与随机数不相等,则提示玩家猜测错误,并根据猜测与随机数的大小关系给出相应提示。 6. 继续猜测或退出游戏:程序询问玩家是否继续猜测,如果选择继续,则回到步骤2;如果选择退出,则游戏结束。 7. 游戏结束:显示游戏结束信息,包括玩家猜测的次数和正确答案。 ### 回答3: 猜数字游戏是一种经典的数学推理游戏,玩家需要通过猜测来猜出一定范围内隐藏的数字。其功能和流程如下: 功能: 1. 确定游戏的数字范围,例如1到100之间的数字。 2. 生成一个随机的目标数字,并将其作为游戏的答案。 3. 提供用户界面,允许玩家输入猜测的数字。 4. 判断玩家猜测的数字与答案之间的关系,若猜对则游戏结束,若猜错则给出相应提示。 5. 记录玩家已经猜测的次数,并提供相应的反馈。 6. 提供重新开始游戏的选项。 流程图: 1. 开始游戏。 2. 设置数字范围,生成随机答案。 3. 接收用户猜测的数字。 4. 判断用户猜测的数字与答案之间的关系。 - 若猜对,显示猜对的信息,游戏结束。 - 若猜错,根据数字大小或者大小关系给出提示。 5. 统计猜错次数。 6. 询问玩家是否继续游戏。 - 若选择继续,返回步骤3。 - 若选择结束,显示结束信息,游戏结束。 7. 结束游戏。 通过以上流程,猜数字游戏可以提供一个有趣的数学推理体验,激发玩家的逻辑思维能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值