课件16张PPT。第十课 画彩色螺旋图学习目标:1.进一步熟悉循环程序,能根据需要选择 for 或者
while 编写循环程序;
2.进一步熟悉 turtle 库中的函数,能自主地查找并
使用书中未学过的函数进行编程;
3.理解求余运算,能熟练地使用求余操作 a%b 编程重点是进一步熟悉 for 循环编程,让学生理解序列和 for 是如何配合来控制循环的。
难点是求余数运算。重难点:复习:一、请根据说明说出下列函数的名称及简写1、向当前画笔方向移动指定长度2、清除所画图形,画笔的位置和状态不变3、逆时针旋转指定度数4、后退移动指定长度二、命令for i in range()的作用是什么?一、画螺旋图:可以使用while循环或for循环来画演示操作1:【例题10-1】分别利用for循环和while循环画多边形螺旋图注意:给画螺旋图的函数设计两个参数,一个是多边形螺旋图的边数n,另一个是最大边长a。wdbx(n,a)用while循环设计函数fdbx(n,a)用for循环设计函数wdbx(n,a)是用while循环设计的函数,fdbx(n,a)是用for循环设计的函数,它们都能画出同样的多边形螺旋图。先画wdbx(n,80)画一个螺旋图形,然后清屏,再用fdbx(n,80)画螺旋图形。为了看清楚它们各自画的图形,中间加了一个暂停命令:sleep(2),即暂停2秒。sleep()函数来自time库中,所以要加入命令import time常用的函数及其功能探究任务一:参照图10-1,画八边形螺旋图同学们,通过练习你们发现了什么吗?
能不能继续参照图10-1,画圆螺旋图呢?二、画彩色螺旋图仔细观察图10-1中的图形,发现画完一边或画完一个圆之后会变一种颜色,这是怎么实现的呢?演示操作例题【10-2】画彩色六边形每一边的颜色都不一样小博士for语句的标准格式为:
for <变量> in <序列>:
<语句块>
<序列>可以是列表,或者一个字符串,或者rang()函数产生的序列。for语句循环的次数为列表或序列中元素个数,或者字符串中字符的个数。<变量>依次取<序列>中的元素作为<变量>的值。探究任务二:P60试一试,下面的程序能画出图10-2的图形吗?程序如下:执行结果:思考:结何图10-2的程序,分析一下,两者程序有什么不同吗?演示操作2:【例题10-3】画彩色六边螺旋图形。螺旋图形的边长是逐步增加的,因此边长要用逐步增加的变量来控制。颜色只有六种,颜色的循环怎么控制呢?请看下面的程序:程序执行结果:颜色分别c[0],c[1],c[2],c[3],c[4],c[5],当变量i<6时,正好c[i]可以控制颜色,但i>=6时就不行了,因此将i除以6求余数,用余数来控制颜色的循环。求余数的操作符是“%”。新命令
格式:a%b
功能:求a除以b的余数。 P61试一试1,在Python Shell的交互模式下进行求余数操作,将表达式的值填在表格中。探究任务三:探究任务四: P61试一试2、将ex103.py中的语句”turtle.forward(i)”换成”turtle.circle(i)”,会画出什么图形呢?你能修改程序,画出更多漂亮图形吗?(例如:图10-1、10-3中的图形)演示操作3:【例题10-4】画同心圆。画单色的同心圆比较简单,只需要控制圆的半径进行循环。每画一个圆,圆的半径增加10,因此,为了画同心圆,画笔的位置要往外平移10。如果要画彩色的同心圆,还需要控制颜色的循环在程序中,控制颜色使用了列表:c[int(i/10)%6],由于i的值是按照步长10递增的,所以int(i/10)是按照连续自然数递增的,int(i/10)%6就可以在0~5之间循环。课后作业:运行下面的程序,画出如图10-5所示的图形:新世纪版信息技术八年级上册第十课画彩色螺旋图教学设计
课题
画彩色螺旋图
单元
第十课
学科
信息技术
年级
八年级上册
学习
目标
1.进一步熟悉循环程序,能根据需要选择 for 或者 while 编写循环程序;
2.进一步熟悉 turtle 库中的函数,能自主地查找并使用书中未学过的函数进行编程;
3.理解求余运算,能熟练地使用求余操作 a%b 编程。
重点
进一步熟悉 for 循环编程,让学生理解序列和 for 是如何配合来控制循环的。
难点
求余数运算
教学过程
教学环节
教师活动
学生活动
设计意图
复习
请根据说明说出下列函数的名称及简写
1、向当前画笔方向移动指定长度
2、清除所画图形,画笔的位置和状态不变
3、逆时针旋转指定度数
4、后退移动指定长度
二、命令for i in range()的作用是什么?
学生复习并回答问题
通过复习巩固上节课所学内容,更好的衔接本课内容
讲授新课
画螺旋图:
演示操作1并讲解:【例题10-1】分别利用for循环和while循环画多边形螺旋图
注意:给画螺旋图的函数设计两个参数,一个是多边形螺旋图的边数n,另一个是最大边长a。
2、常用的函数及其功能
3、探究任务一:参照图10-1,画八边形螺旋图
提问:同学们,通过练习你们发现了什么吗?
能不能继续参照图10-1,画圆螺旋图呢?
画彩色螺旋图
师提出疑问:仔细观察图10-1中的图形,发现画完一边或画完一个圆之后会变一种颜色,这是怎么实现的呢?
1、演示操作例题【10-2】画彩色六边形
2、小博士
for语句的标准格式为:
for <变量> in <序列>:
<语句块>
3、探究任务二:P60试一试,下面的程序能画出图10-2的图形吗?
提问:结何图10-2的程序,分析一下,两者程序有什么不同吗?
演示操作2:【例题10-3】画彩色六边螺旋图形。
提出疑问:螺旋图形的边长是逐步增加的,因此边长要用逐步增加的变量来控制。颜色只有六种,颜色的循环怎么控制呢?
师做小结:颜色分别c[0],c[1],c[2],c[3],c[4],c[5],当变量i<6时,正好c[i]可以控制颜色,但i>=6时就不行了,因此将i除以6求余数,用余数来控制颜色的循环。求余数的操作符是“%”。
7、新命令讲解
格式:a%b
功能:求a除以b的余数。
8、布置探究任务三:
P61试一试1,在Python Shell的交互模式下进行求余数操作,将表达式的值填在表格中。
演示操作3并讲解:【例题10-4】画同心圆。
画单色的同心圆比较简单,只需要控制圆的半径进行循环。如果要画彩色的同心圆,还需要控制颜色的循环
师小结:每画一个圆,圆的半径增加10,因此,为了画同心圆,画笔的位置要往外平移10。
在程序中,控制颜色使用了列表:c[int(i/10)%6],由于i的值是按照步长10递增的,所以int(i/10)是按照连续自然数递增的,int(i/10)%6就可以在0~5之间循环。
认真听、观看老师演示
学生熟记
小组协作探究,完成任务并发现问题
思考并回答问题
认真听讲并观看学习编写彩色六边形程序
认真阅读课本并认真听讲,掌握for语句的标准格式的使用
小组协作探究,完成任务并解决问题
认真学习并观看老师演示操作,思考回答问题,学习编写画彩色六边螺旋图形程序
学习新命令掌握求余数的运算
学生自主练习并完成表格
生独立完成任务,小组组长负责协助完成
认真学习并观看老师演示操作
通过讲解使学生学会给设计函数参数,利用for循环和while循环画多边形螺旋图
学会用常用的函数进行编程
通过小组探究,培养学生相互协作完成练习的能力,并提高学习积极性。
通过学习,学生掌握能够理解for循环语句画出彩色多边形
使用学生学会用for标准语句编程
通过小组探究,培养学生相互协作完成练习的能力,并提高学习积极性。
通过学习,生能理解用余数来控制颜色的循环进行编程
通过学习掌握用余数来控制颜色的循环进行编程
培养学生独立完成练习的能力。
培养学生独立完成练习的能力。
通过演示,学生学会编写单色和彩色同心圆的程序
课后作业
P63试一试:运行下面的程序,画出如图10-5所示的图形
用未来教室平台进行探究完成作业
巩固知识
课堂小结
本节课进一步熟悉了 for 循环编程,理解序列和 for 是如何配合来控制循环的并学习求余数运算。下节课将会学习画正多角星
各组汇报总结,其他小组成员做补充。
锻炼学生的总结能力,逻辑思维、语言表达能力。
板书
画彩色螺旋图
画螺旋图
Speed 速度 pensize 粗细
pencolor 颜色字符 home()
circle 半径
二、画彩色螺旋图
for <变量> in <序列>:
<语句块>
a%b 求a除以b的余数