(共29张PPT)
用for循环玩转绘图
学习目标
1.学会用流程图描述循环结构
2.理解循环结构的应用场景
3.掌握for循环的语法,并熟练应用解决生活中的实际问题
4.理解和掌握range函数在for循环中的应用
5.理解绘图数字自动化执行过程,树立抽象和建模的信息化意识,培养和提升计算思维
教学内容
CONTENTS
温故知新: turtle库
01
新课研讨:循环结构
02
应用拓展:玩转绘图
04
讲授新知:for循环
03
总结归纳
05
课后作业与反思
06
01
温故知新:turtle
绘制五环与绘制国旗
turtle库中关于画笔的相关操作
引入turtle库 : import turtle
画笔的设置:turtle.pensize(10) ,turtle.pencolor(“red”)
直线的绘制:turtle.forward(150),turtle.backward(150)
弧线的绘制:turtle.circle(50),turtle.circle(50,40)
画笔方向的设置:turtle.left(90),turtle.right(90)
画笔其他操作:turtle.penup(),turtle.pendown(),turtle.goto(20,100)
颜色的填充:turtle.color(“blue”,“red”)
turtle.begin_fill() ,turtle.end_fill()
02
新课研讨
面对这样的图形,我们应该怎么绘制呢
抽象与建模----循环结构
提出问题:
1.重复性问题特点是什么?
重复性问题的特点是:
满足特定重复条件后,执行相应的重复动作
循环条件
循环体
03
新课讲解:for循环
python程序设计之for循环
语法结构:
for <变量> in <序列>:
循环体
例1:for value in [“咖啡”,“牛奶”,“冰红茶”]:
print[ value]
例2:for i in [1,2,3,4,5]:
print(good)
实例讲解
for <变量> in <序列>:
循环体
例1:for i in [1,2,3,4,5]:
print(i)
运行结果:
例2:for i in range(1,6,1):
print(i)
range 函数
for <变量> in range( ):
循环体
range(终点) 返回从0到终点(不包含终点)的数列
range(起点,终点)返回从起点到终点(不包含终点)的数列
range(起点,终点,步长)返回从起点到终点(不包含终点),步长的数列
例1: for i in range(10):
print(i)
例2:for i in range(1,10):
print(i)
例3:for i in range(1,10,2):
print(i)
循环应用
例1:for i in range(10):
print(“戴口罩,勤洗手”)
运行结果
在循环条件中使用,充当计数器作用,可以控制循环体执行的次数
例2:for i in range(1,11):
print(i)
运行结果:
在循环体中使用,充当变量的作用
04
应用拓展:玩转绘图
五角星的绘制
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
代码改进:
import turtle
turtle.color("yellow","yellow")
turtle.begin_fill()
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
turtle.forward(150)
turtle.right(144)
turtle.end_fill()
turtle.color("yellow","yellow")
turtle.begin_fill()
for i in range(5):
turtle.forward(150)
turtle.right(144)
turtle.end_fill()
运行结果
太阳花绘制----改变相关参数
import turtle
turtle.color("red","yellow")
turtle.begin_fill()
for i in range(50):
turtle.forward(200)
turtle.left(170)
turtle.end_fill()
import turtle
for i in range(1, 500):
turtle.forward(i)
turtle.left(91)
曲线的绘制
多边形原理
import turtle
for i in range(12):
turtle.forward(40)
turtle.left(30)
试着更改这些参数值
弧线可以理解为不断的画直线,转换角度较小
from turtle import *
a=0.4
for i in range(360):
a=a+0.08
left(10)
forward(a)
05
总结归纳
1.用计算机编程解决问题的思路
抽象与建模----设计算法-----描述算法
1.循环结构
循环条件和循环体
在满足循环条件下,不断执行循环体,直到不满足条件为止
2.循环结构的应用场景
有限次数执行重复操作
特定条件下执行重复操作
3.for循环的语法:
for <变量> in <序列>:
循环体
4.range函数用法
range()返回从起点到终点(但是不包含终点),以步长为两个元素之间的差的有序序列。
06
课后作业反思
课后作业
1.用顺序结构绘制正方形后,试着利用for循环改进代码。
2.在第1题的基础上,对for循环中的参数进行更改,绘制出如下图形。
3.在第2题的基础上,继续修改循环体中的参数,看能否画出什么样的图形。
4.实现不同颜色的有规律性填充
参考代码
import turtle
t=turtle.Pen()
turtle.pencolor("red")
turtle.bgcolor("black")
sides=6
colors=["red","blue","yellow","orange","green","purple"]
for x in range(360):
t.pencolor(colors[x%sides])
t.forward(x*3/sides+1)
t.left(360/sides+1)
t.width(x*sides/200)