内容正文:
2.1 计算机解决问题的过程
第2单元 编程计算
高中信息技术 必修1 数据与计算
游戏导入——看看谁是咱班的最强大脑!
【最强大脑游戏】
游戏规则:
用10秒记忆10个物品及他们的编号,之后根据提问回答5个物品的编号,看谁记住的物品编号数量多。
计算机是如何实现这个游戏的?
2.1 计算机解决问题的过程
第2单元 编程计算
学习目标
1 了解计算机解决问题的过程。
2 了解流程图的规范表示方法,学会使用自然语言和流程图描述算法。
3 了解算法的三种基本结构。
2.1 计算机解决问题的过程
本节我们将围绕“智力游戏——最强大脑游戏”项目展开学习,通过该项目的活动,初步体验使用计算机解决问题的过程。
本项目主要包含“表示游戏的算法”和“用Python语言实现游戏”两个任务。
分析问题 设计算法
任务一 表示游戏的算法
活动1 使用自然语言描述算法
解决问题的方法和步骤。
人们日常生活中使用的语言,汉语、英语、德语等都是自然语言。用自然语言描述算法符合我们的表达习惯,容易理解。
解决问题的过程,就是实现算法的过程。
描述算法的方法:自然语言、流程图、伪代码
算法设计是最重要的环节,编程的核心。
实现“最强大脑”游戏问题的算法,用自然语言描述“最强大脑”游戏问题的算法,填写如下表:
实现“最强大脑游戏”的步骤
环节 解决的问题 解决的步骤
出题 显示物品和编号10秒 1.
2.
......
答题
输出结果
用自然语言表示通俗易懂,具有主观性容易出现“歧义性”。
自然语言表示的含义往往不大严格。
分析问题 设计算法
任务一 表示游戏的算法
活动2 使用流程图描述算法
流程图也称为程序框图,是算法的一种图形化表示方法,与自然语言描述算法相比,更容易理解。目前最常用的流程图规范是由美国国家标准学会制定的一系列流程图符号。
起止框
处理框
判断框
流程线
连接符
输入/输出框
三种基本结构流程图描述算法
A
B
顺序结构
条件结构
循环结构
条件
否
是
A
A
B
条件
是
否
分析问题 设计算法
任务一 表示游戏的算法
活动2 使用流程图描述算法
开始
①显示游戏规则、物品及其编号10秒
清屏
②
出题
③答题
④回答是否正确
答对的题数加1
⑤输出答对的题数
结束
是否已出满5题
显示游戏规则、物品及其编号10秒
答题
回答是否正确
输出答对的题数
活动2:根据自然语言的描述,补全 “最强大脑游戏”的流程图,思考每种形状的框图的作用
分析问题 设计算法
任务一 表示游戏的算法
活动2 使用流程图描述算法
练习1:下列关于算法的基本结构说法错误的是( )
A. 顺序结构中的每个步骤一定会被执行一次,而且仅被执行一次
B. 对于分支结构来说,必定有一个分支被执行,其它的分支则被忽略
C. 算法的基本结构分顺序结构、分支结构和循环结构三种
D. 循环结构中的步骤必定会被执行一次
分析问题 设计算法
任务一 表示游戏的算法
活动2 使用流程图描述算法
练习2:该算法流程图如左图,
在流程图中
蓝虚线框部分是________结构,
红虚线框部分是________结构,
橙色虚线框部分是______结构。
开始
显示游戏规则、物品及其编号10秒
清屏
是否已出满5题
出题
答题
回答是否正确
答对的题数加1
输出答对的题数
结束
开始
显示游戏规则、物品及其编号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(