内容正文:
—— 计算机解决问题的过程
猜 数 字 游 戏
教 学
目 标
通过探讨表示游戏的算法,了解使用自然语言、流程图描述算法,进一步理解三种基本结构的流程图。
在项目活动中体验数字化学习过程,感受利用数字化工具和资源的优势。
通过用Python语言实现游戏的研究,掌握计算机解决问题的一般过程,熟悉Python语言的开发环境,了解程序设计语言的发展。
2
课 堂 引 入
给定一个1-100范围内的数
猜一猜
这个数字是多少?
1 2
3
分析问题
一
电脑随机生成一个1-100之间的数字
猜数字,与电脑生成的数字进行比较,给出提示(大了还是小了?)并记录猜的次数
答对了之后输出猜测的次数
1.分析问题
如何利用计算机编程实现这个小游戏?
其实我们分析的“最强大脑”游戏问题的求解过程就代表着一种算法。它指为了解决问题所制订的步骤、方法。生活中我们也用到很多算法,比如去超市购物,先选定物品,然后进行比较挑选,最后去收银台结账,这一系列活动流程和策略就是所谓的算法
了解算法之后,还需要准确、具体的将他描述出来。如何描述一个算法?
常见的用自然语言表示算法 、用流程图表示算法
4
分析问题
一
算 法
1.分析问题
指为了解决问题所制订的步骤、方法
2.描 述 算 法
自然语言
用流程图
伪代码
……
电脑随机生成一个1-100之间的数字
猜数字,与电脑生成的数字进行比较,给出提示(大了还是小了?)并记录猜的次数
答对了之后输出猜测的次数
其实我们分析的“最强大脑”游戏问题的求解过程就代表着一种算法。它指为了解决问题所制订的步骤、方法。生活中我们也用到很多算法,比如去超市购物,先选定物品,然后进行比较挑选,最后去收银台结账,这一系列活动流程和策略就是所谓的算法
了解算法之后,还需要准确、具体的将他描述出来。如何描述一个算法?
常见的用自然语言表示算法 、用流程图表示算法
5
课堂活动
活动一:用自然语言表述 实现“猜数字游戏”的步骤
实现“猜数字游戏”的步骤
环节 解决的问题 解决的步骤
出数字 电脑随机生成一个数字 1.电脑随机生成一个数字
2.将生成的数字存放在一个变量中
答数字
输出结果
猜这个数字,进行比较,给出相应的提示,并记录次数。
1.猜这个数字
2.记录猜测次数
3.与电脑生成的数字进行比较,给出提示
4.重复1~3,直到猜对。
输出猜中数字的次数
输出猜中数字的次数
自然语言就是我们日常生活中使用的语言
6
算法描述
二
2.算法描述——自然语言
一千个观众眼中有一千个哈姆雷特。
——莎士比亚
自然语言描述的优缺点
用自然语言表示通俗易懂。
语义不大严格,容易出现“歧义性”。
……
7
算法描述
二
2.算法描述——流程图
常用的流程图符号
起止框
输入/输出框
处理框
判断框
流程线
连接符
相比自然语言描述方法,用流程图描述算法更形象、直观、更容易理解。
下面我们来介绍另外一种算法描述方法:流程图
相比自然语言描述方法,用流程图描述算法更形象、直观、更容易理解
为了使算法的流程图看起来更加标准,需要对流程图的表示方法进行规范。下面就是标准的流程图符号
8
算法描述
二
例:“大象进入冰箱”的算法表示
用流程图表示:
顺
序结构
S2:大象进入冰箱;
S1:拉开冰箱门 ;
S3:关上冰箱门;
S1
S2
S3
开始
结束
用自然语言描述:
下面我们就分别用自然语言和流程图表示大象进入象舍
9
算法描述
二
例:“大象太大无法进入”的算法表示
用流程图
如何表示?
S1:拉开冰箱门 ;
S3:关上冰箱门;
S2:判断大象是否太大,如果太大,那么就不能进入,否则可以进入
用自然语言描述:
10
算法描述
二
S1:拉开冰箱门 ;
S3:关上冰箱门;
S2:判断大象是否太大,如果太大,那么就不能进入,否则可以进入
用自然语言描述:
活动二:用画程软件画出“大象太大无法进去的流程图”
11
算法描述
二
例:“大象太大无法进入”的算法表示
用流程图表示:
选择结构
S1:拉开冰箱门 ;
S3:关上冰箱门;
S2:判断大象是否太大,如果太大,那么就不能进入,否则可以进入
用自然语言描述:
太大?
无法进入
否
是
进入冰箱
S1
开始
结束
S3
12
算法描述
二
例:“十只小象进入冰箱”的算法表示
S1:拉开冰箱门 ;
S4:关上冰箱门;
S2:小象进入冰箱,小象的数量加1
用自然语言表示:
S3:重复执行步骤2,直到小象数量达到10只
用流程图表示:
循环结构
一只小象进入
否
是
小象数量加1
S1
开始
结束
S4
十只都已进入?
1