中图版七年级上册信息技术 5.5生活算法编程 课件(22张幻灯片)

资源下载
  1. 二一教育资源

中图版七年级上册信息技术 5.5生活算法编程 课件(22张幻灯片)

资源简介

七年级上册
第五单元
生活算法编程
第五节
目录
一 · 算法的概念
二 · 算法的描述
1 · 用自然语言描述
2 · 用流程图表示
3 · 计算机语言描述
头脑风暴
笑一笑:
把大象放进冰箱
小游戏:
农夫过河
最佳算法:
猜商品价格
小能手:
编程小试身手
如何将大象装进冰箱?
步骤:

打开冰箱门,

把大象放进去,

关上冰箱门。
算法
一、算法的概念
任务一:分组讨论,设计“农夫过河”的算法,完成趣味游戏。
讨论
算法
归纳
展示
农夫



小游戏:
农夫需要把狼、羊、菜和自己运到河对岸去,只有农夫能够划船,而且船比较小,除农夫之外每次只能运一种东西。还有一个棘手问题,就是如果没有农夫看着,羊会偷吃菜,狼会吃羊。
请思考该问题的算法。
算法一:
04
03
02
01




1
2
3
4
农夫先带羊过河,自己返回。
带菜过河,带羊返回。
带狼过河,自己返回。
带羊过河,完成。
小游戏:
算法二:
04
03
02
01




1
2
3
4
农夫先带羊过河,自己返回。
带狼过河,带羊返回。
带菜过河,自己返回。
带羊过河,完成。
小结
1、算法就是解决具体问题的思路、方法、步骤。
2、算法很重要,没有算法农夫就无法顺利过河。
猜一猜:商品价格(1~10元整数)
1、选择最佳算法:
已知一个有序的数列,要找一个数n是否在此数列中。例如,猜商品价格游戏。在有序数列{1,2,3,4,5,6,7,8,9,10} 内查找商品价格n=7。我们有两套方案。

1,2,3,4,5,6,7,8,9,10
算法一:
从数列左边开始一个一个的判断,找到则返回True,如果直到最后一个也不是则返回False。(顺序查找)
算法二:
从中间查找,如果n大于或者小于中间元素,则在数组大于或小于中间元素的那一半数列中查找,而且跟开始一样从中间元素开始比较。(二分法查找)
1、选择最佳算法:
讨论
算法
归纳
展示
猜一猜
价格
?10?
算法
最佳算法:
解决同一个问题,可使用不同的算法。不同算法的效率可能差别非常大,应选择最佳算法。比如从家到学校,可选择步行、骑车或坐公交。当家和学校距离很近时,则骑车比坐公交要快。
生活中有哪些地方用到算法?
2、生活大爆炸
算法
算法无处不在
.
从家到学校的方式和路径
.
做一道菜的方法.
去商场购物时
商品的选择
.
华罗庚“煮水泡茶”的步骤.
数学解题思路.
做一件家务的步骤.
完成所有作业的顺序
.
2、生活大爆炸
——大问题如何分解成小问题? 任务二:选一件你会做的家务,设计并写出算法。
1
2
3
从三方面训练
多看
多做
多想
了解更多的知识为解决问题做准备。
动手解决小问题,原先的大问题也会逐渐变成小额问题。
在生活学习中,勤思考,找算法。
二、算法的描述(自然语言、流程图、计算机语言)
1
3
5
2
4
教室电灯
不亮
流程图
自然
语言
检查电源是否接好;
如果没有,则接好电源;
如果电源没问题,则检查灯泡。
如果灯泡烧毁,更换灯泡;
如果灯泡没坏,则修理电灯。
在农夫过河和做家务算法中,我们使用了语言描述解决问题的过程,这种方法称为自然语言描述算法。
“农夫过河”算法的描述
1
3
2
4
农夫过河
算法
流程图
自然
语言
农夫先带羊过河,自己返回。
带菜/狼过河,带羊返回。
带狼/菜过河,自己返回。
带羊过河,完成。
开始
农夫带羊过河,自己返回
农夫带菜/狼过河,带羊返回
农夫带狼/菜过河,自己返回
带羊过河
结束
流程图是描述我们进行某一项活动所遵循顺序的一种图示方法。
算法的流程图表示
表示算法的开始或结束,“开始”或“结束”写在符号内。
表示算法过程中,数据和信息的输入和输出。
表示算法过程中,需要处理的内容(步骤),步骤的简要内容写在矩形内。只有一个入口和出口。
表示算法过程中的分支结构。菱形框4个顶点中,上面的顶点表示入口,根据需要,用其余顶点表示出口。
算法过程中,指向流程的方向。
开始、结束框
活动框
流程线
判断框
输入、输出框
流程图符号与意义
用计算机语言描述算法 即编程
代码
前情回顾:第三节 编程实现幻影“海龟”
调用随机函数模块“random”,让“小红”随机出现在屏幕中某位置上,调用stamp命令留下足迹。
import turtle
import random
小红 = turtle.Turtle()
小红.color("red")
小红.shape("turtle")
小红.up()
while 0 < 1:
小红.goto(random.randint(-300,300), random.randint(-300,300))
小红.stamp()
编程小试身手
任务三:扑面而来的Hello
尝试利用我们学过的内容,实现右图所示图形。
参考课堂学案和教师文件夹中的“幻影海龟”资料 ,完成编程并保存,提交至云课堂作业空间。
探究学习资料:课堂学案+幻影海龟资料+本任务流程图
进阶任务:变色海龟
你能否结合第三节幻影海龟的任务,将海龟设为随机颜色,制造一个变色海龟,让其在画布上随机留下多彩印记?参看课堂学案图示,完成编程并提交至云课堂作业空间。
五、编程小试身手
代码
import turtle #调用turtle模块
import random #调用随机函数 random模块
hello = turtle.Turtle() #创建一只海龟,命名为hello
hello.up() #让hello抬起尾巴(不画线)
while 0 < 1: #while循环:当0<1时,执行下列语句。
hello.goto(random.randint(-300,300), random.randint(-300,300))
#hello在坐标范围内随机移动到某一位置
hello.color(random.random(),random.random(),random.random())
#设hello颜色随机
hello.write("Hello", font=("微软雅黑", random.randint(10,60)))
#写下"Hello",设置字体为微软雅黑,字号在10至60间随机大小。
总结

算法的概念

算法的
自然语言描述

算法的
流程图表示

用计算机语言
描述算法
分层任务:
三个基础
一个进阶
解决问题的方法、步骤。
算法无处不在。
选择最佳算法。
在农夫过河和家务算法中,使用语言描述解决问题的步骤。
流程图:一种图示方法描述解决问题的步骤(电灯不亮、农夫过河)
用计算机语言来描述算法,就是编程(幻影海龟、扑面而来的Hello)
基础任务:设计农夫过河算法、家务算法,编程实现扑面而来的Hello。
进阶任务:变色海龟
算法是“灵魂”
结束语
算法世界那么大,你想不想好好去看看?
希望同学们以后在遇到问题的时候,能开动脑筋,找到该问题的算法,学以致用,让算法更好的为我们的学习、生活服务。

展开更多......

收起↑

资源预览