内容正文:
2024年2月26日
第2单元 编程计算
2.1计算机解决问题的过程
1
学习目标
1、了解计算机解决问题的过程。
2、了解流程图的规范表示方法,学会使用自然语言和流程图描述算法。
3、了解算法的三种基本结构。
看看谁是咱班的最强大脑!
【最强大脑游戏】
游戏规则:用10秒记忆10个物品及他们的编号,之后根据提问回答5个物品的编号,看谁记住的物品编号数量多。
计算机是如何实现这个游戏的?
打开最强大脑游戏.py,人机互动玩游戏,看谁记住的物品编号数量多。
3
你来设计“最强大脑”游戏!
计算机解决问题就是让计算机按照程序执行指令
用已有的程序解决问题
自己编写程序解决问题
提出问题--如何用计算机解决这个问题呢?
分析问题:这款游戏有哪些功能?
显示游戏规则等提示信息
互动问答
显示答对题数
向计算机输入数据
计算机输出数据
计算机处理数据
判断答题对错并计算数量
计算机输出数据
难点:清晰准确的将自己想要做出的游戏(实现的功能)描述出来!
描述要点:每一步的处理对象、准确的处理过程。
活动1:实现“最强大脑”游戏问题的算法,用自然语言描述“最强大脑”游戏问题的算法,填写表2.1.1(P19 )。
设计算法:游戏的设计方案
算法就是解决问题的方法和步骤
(解决问题的过程,就是实现算法的过程)。
描述算法的方法:自然语言、流程图、伪代码
算法设计是最重要的环节,编程的核心。
- 用自然语言描述算法
自然语言是指人们日常生活中使用的语言,汉语、英语、德语等都是自然语言。用自然语言描述算法符合我们的表达习惯,容易理解。
活动1:实现“最强大脑”游戏问题的算法,用自然语言描述“最强大脑”游戏问题的算法,填写表2.1.1(P19 )。
特点:容易理解、书写繁琐、
计算机目前不能灵活执行
- 用流程图描述算法
流程图:算法的一种图形化表示方法
特点:形象、直观、更容易理解。
开始
①显示游戏规则、物品及其编号10秒
清屏
⑤输出答对的题数
结束
②
出题
③答题
④回答是否正确
答对的题数加1
否
是
显示游戏规则、物品及其编号10秒
输出答对的题数
开始
①显示游戏规则、物品及其编号10秒
清屏
②
出题
③答题
④回答是否正确
答对的题数加1
⑤输出答对的题数
结束
活动2:根据自然语言的描述,补全 “最强大脑游戏”的流程图,思考每种形状的框图的作用
是否已出满5题
显示游戏规则、物品及其编号10秒
答题
回答是否正确
输出答对的题数
- 知识点:三种基本结构
A
B
顺序结构
A
B
条件
是
否
分支结构
A
条件
是
否
循环结构
练习1:下列关于算法的基本结构说法错误的是( )
A. 顺序结构中的每个步骤一定会被执行一次,而且仅被执行一次
B. 对于分支结构来说,必定有一个分支被执行,其它的分支则被忽略
C. 算法的基本结构分顺序结构、分支结构和循环结构三种
D. 循环结构中的步骤必定会被执行一次
开始
显示游戏规则、物品及其编号10秒
清屏
是否已出满5题
出题
答题
回答是否正确
答对的题数加1
输出答对的题数
结束
练习2:该算法流程图如左图,
在流程图中
蓝虚线框部分是________结构,
红虚线框部分是________结构,
橙色虚线框部分是______结构。
开始
显示游戏规则、物品及其编号10秒
清屏
是否已出满5题
出题
答题
回答是否正确
答对的题数加1
输出答对的题数
结束
借助流程图分析代码
用Python语言实现算法
import random
import time
import os
print("你好,现在你有10秒钟的时间记忆下列物品及其编号")
things=["苹果","香蕉","橙子","梨子","猕猴桃","柚子","猴魁","铁观音","彩蛋","复活节"]
for i in range(10):
print(i,“:”,things[i]) #在屏幕上显示编号及物品
time.sleep(10) #延时10秒
os.system(“cls”) #清屏幕,隐去编号及物品
n=0 #记录答对的题数,初值为0
t2=random.sample(things,5)#随机抽出5个物品
for i in t2: #出5题
ans=int(input(i + "的编号是:"))#输入编号答题
if i==things[ans]:
n=n+1