(共18张PPT)
魔幻螺旋
面对n行全英文代码,绞尽脑汁设计算法,让人抓狂,头发渐渐掉光,心如死灰、然后望而却步,最后认为编程很难。
大家心目中的编程是什么样的?
学会编程是一件高大上的事情;
学会编程能够解决实际问题,让你获得成就感;
学会编程,掌握一项基本技能,带给你更多的人生可能。
比如熟悉的万花尺,也能通过编程来绘制繁花曲线
项目分析
项目目标:绘制一个彩色螺旋线六边形。
绘制一条边
向左旋转60度
初出茅庐(任务一):绘制一个六边形
1
2
我有这些技能哟!
1.circle() #画圆
2.left() #向左转
3.right() #向右转
4.forward() #向前
5.back() #向后
6.speed() #画笔的速度
7.pencolor() #画笔颜色
……
我们的新朋友
Turtle,中文为海龟的意思,它是Python中的一个库,利用turtle库中的函数指令能够绘制各种图形。
Hello!I’m Turtle.
使用技能——召唤海龟
#召唤海龟
import turtle
#画一条线
turtle.forward(length)
#召唤海龟,给他取个别名
import turtle as t
#画一条线
t.forward(length)
如何画如图所示的六边形?
提示:修改海龟(鼠标)方向
#向右转angle度
t.right(angle)
#向左转angle度
t.left(angle)
修改鼠标的方向
#向右转60度
t.right(60)
#向左转60度
t.left(60)
利用循环语句简化代码
import turtle as t
for i in range(6):
t.forward(100)
t.left(60)
import turtle as t t.forward(100)
t.left(60)
t.forward(100)
t.left(60)
t.forward(100)
t.left(60)
t.forward(100)
t.left(60)
t.forward(100)
t.left(60)
t.forward(100)
t.left(60)
利用循环语句简化代码
range()是一个函数, for i in range () 就是给i赋值:
range()函数用法:
range(start, stop[, step]),分别是起始、终止和步长
range(4)即:从0到4,不包含4,即0,1,2,3
range(1,4) 即:从1到4,不包含4,即1,2,3
range(1,4,2)即:从1到4,每次增加2,因为1+2=3,3+2=5,所以输出只有1,3。
第三个数字2是代表步长。如果不设置,就是默认步长为1
import turtle as t
for i in range(6):
t.forward(100)
t.left(60)
遍历循环
for 变量 in range(循环次数):
语句
小试牛刀(任务二):绘制螺旋六边形
命令海龟边走边向左旋转60度,并且每次前进的距离越来越大,最终绘制成一个螺旋状的六边形。
从0开始到99
炉火纯青(任务三):彩色螺旋六边形
如何达到效果图呢?
六边形有六条边,只要保证同一方向边的颜色相同,就可以达到目的。
结合我们所学的取余运算,每六个数取余的结果循环一次
运用表达式“i % 6”计算得到的结果,取用颜色列表colors中的元素,将列表元素传递给函数pencolor()。通过改变画笔颜色,绘制出多彩螺旋六边形。
运行结果
代码
炉火纯青(任务三):彩色螺旋六边形
独孤求败(任务四):立体螺旋六边形
使用函数pensize(),改变画笔海龟t的粗细。使用每次循环都会改变的变量i,实现线条逐渐加粗的效果。
代码
运行结果
笑傲江湖(挑战1):旋转彩虹
更换背景为黑色,加入紫色purple、橙色orange,
设置每次旋转的角度为59度。
课后延伸
代码解析
笑傲江湖(挑战2):幻想六芒星
绘制一个由四种颜色组合而成的彩色六芒星。
其中:粉红色(pink)、天蓝色(skyblue)、淡绿色(light green)、橙色(orange)
代码解析
利用除以4余数的规律为:0,1,2,3循环,给画笔赋予颜色。
画六芒星的循环体
课堂小结
编写计算机程序解决问题的一般过程:
抽象建模
分析问题
设计算法
编写程序
调试运行
一般过程
Thank you!