内容正文:
null
【导入】
思考:计算机实现“最强大脑”游戏的过程是什么?
2.1 计算机解决问题的过程
教科版必修一《数据与计算》 第二单元第一课时
【新知】
分析问题
设计算法
编写程序
调试运行
【自主学习】阅读课本20页第一段
【要求】用四个四字词语描述计算机解决问题的过程。
计算机解决问题的过程
分析问题
设计算法
编写程序
调试运行
环节
出题
答题
输出结果
计算机解决问题的过程
分析问题
设计算法
编写程序
调试运行
检
把大象放进冰箱的步骤就是算法
把大象放进冰箱需要几步?
1、什么是算法?
算法是解决问题的方法和步骤。
拉开冰箱门
把大象装进冰箱
关上冰箱门
自然语言
流程图
2、算法的描述
算法简单且通俗易懂,但容易产生歧义
形象、直观,容易理解
无法直接在计算机上运行
检
伪代码
程序设计语言
2、算法的描述
开始
打开(冰箱门)
放入(冰箱, 大象)
关闭(冰箱门)
结束
def putElephantIntoFridge():
open_fridge_door()
put_elephant_in()
close_fridge_door()
putElephantIntoFridge()
环节 解决的问题 自然语言
出题 显示物品和编号
10 秒后消失 1.
2.
答题 给出物品,回答编号,
统计答对题数 3.
4.
5.
6.
输出结果 输出答对题目的数量 7.
活动1 “最强大脑”自然语言描述
环节 解决的问题 自然语言
出题 显示物品和编号
10 秒后消失 1.
2.
答题 给出物品,回答编号,
统计答对题数 3.
4.
5.
6.
输出结果 输出答对题目的数量 7.
显示游戏规则、物品及其编号10秒
清屏
给出一个物品名称
回答编号
如果回答正确,答对的题数加1
重复以上步骤,直到答完5道题
输出答对的题数
活动1 “最强大脑”自然语言描述
阅读书本22页使用流程图描述算法
图形符号 名称
输入/输出框
判断框
连接符
起止框
处理框
表示一个算法的开始和结束
表示输入和输出的信息
表示操作的内容
表示判断的条件(是/否)
指向算法运行的方向
表示流程图的接续
流程线
功能
检
1 图形符号 在算法描述流程图中表示( )
A、算法的开始或结束 B、输入输出操作
C、处理或运算的功能 D、判断条件是否满足需求
C
2 下列选项中,属于算法描述方法的是( )
A、列表法 B、枚举法 C、流程图 D、集合法
C
算法的三种基本结构是 、 和 。
顺序结构
分支结构
循环结构
选择结构
书本23页
只有一个入口。
只有一个出口。
结构的每一部分都有机会被执行到。即每一个框都有一条从入口到出口的路径经过它。
算法的三种基本结构共同特点
A
B
条件?
A
B
否
是
活动2 “最强大脑”流程图描述
【小组合作】:补全“最强大脑”游戏的流程图。
自然语言
1.显示游戏规则、物品及其编号10秒
2.清屏
3.给出一个物品名称
4.回答编号
5.如果回答正确,答对的题数加1
6.重复以上步骤,直到答完5道题
7.输出答对的题数
活动2 “最强大脑”流程图描述
显示10秒
满5题?
出题
答题
回答正确?
答对题数+1
自然语言
1.显示游戏规则、物品及其编号10秒
2.清屏
3.给出一个物品名称
4.回答编号
5.如果回答正确,答对的题数加1
6.重复以上步骤,直到答完5道题
7.输出答对的题数
循环结构
分支结构
顺序结构
计算机解决问题的过程
分析问题
设计算法
编写程序
调试运行
检
3、程序设计语言的发展及其特点
高级语言
机器语言
汇编语言
由二进制0、1代码指令,能被计算机直接识别执行效率高,但是理解和记忆比较困难,编程效率极低,移植性差。(硬件的差异)
低级语言
检
高级语言
机器语言
汇编语言
符号化的机器语言,提高了程序的可读性,但是计算机无法直接识别和执行,仍是面向机器的语言,仍属于低级语言。
低级语言
3、程序设计语言的发展及其特点
检
检
高级语言
机器语言
汇编语言
print("你好,现在你有10秒钟的时间记忆下列物品及其编号")
things=["苹果","香蕉","橙子","梨子","猕猴桃","柚子","猴魁","铁观音","彩蛋","复活节"]
3、程序设计语言的发展及其特点
高级语言更接近自然语言,并不特指某一种语言,也不依赖于特定的计算机系统,因而更容易掌握和使用,通用性也更好。比较流行的高级语言有Java、C/C++以及本书使用的Python等。用高级语言编写的程序可读性更强,也便于修改、维护。
计算机解决问题的过程
分析问题
设计算法
编写程序
调试运行
检
活动3 调试运行程序
调试
代码出错的情况下修改代码的过程
运行:IDLE—python自带简易开发环境
1.点击菜单栏File——Save/Save as——保存文件名后缀为.py——点击菜单栏Run——点击Run Module——结果会在Shell窗口中输出。
2.双击.py文件直接运行
1、用计算机程序解决问题,正确的顺序是( )
A、分析问题—编写代码—设计算法—调试运行
B、分析问题—设计算法—编写代码—调试运行
C、设计算法—分析问题—编写代码—调试运行
D、调试运行—设计算法—编写代码—分析问题
2、Python、C#、Visual Basic、Java是面向对象的程序设计语言,它们属于( )
A、自然语言 B、高级语言 C、汇编语言 D、机器语言
B
B
【巩固练习】
c
A. 顺序结构 B. 选择结构 с. 循环结构 D.跳转结构
3、下图所示的流程图表达的是()。
【巩固练习】
c
【巩固练习】
4、算法描述如下:
input(x)
if x能被 2 整除 Then
输出x是偶数
else
输出x是奇数
end if
上述采用的算法描述方法是( )
A、自然语言 B、流程图 C、伪代码 D、N-S图
A
【巩固练习】
5、如下是“求实数a的绝对值”的流程图,虚线框中应填入的是( )
【课堂小节】
感谢观看~
import random #随机模块
import time #导入时间
import os #导入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:
ans=int(input(i + "的编号是:")) #输入编号答题
if i==things[ans]:
n=n+1 #如果回答正确,答对的题数加1
print("
你一共答对了",n,"次") #屏幕显示答对的题数
input("
按回车键结束程序")
$