【青少年编程】【Turtle】Day07:最后的挑战
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。
微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。
恭喜你已经完成了前六天的任务,在前六天中你学习到了编程中的循环,画图模块中的方向功能、抬笔功能、颜色填充功能、回家功能,并且熟悉了常见的三角形、多边形、圆形,能够坚持到第七天,你一定非常厉害,既然这样,那么就请准备好,迎接最后的挑战吧!
最后的挑战
世界上有非常多的国家,咱们中国只是其中一个,除了中国,还有很多国家分布在世界各地,他们有的领土大,有的领土小,有的很有名气,有的可能你还没听说过,但是无论哪个国家,他们都有一个象征自己国家的物品,你知道是什么吗?
对啦,这个物品就是国旗,即使是新成立的国家,也需要设计属于自己的国旗,而每一种国旗都有自己不同的含义,比如咱们中国的国旗,这可不是简单地在上面涂个颜色、画几个星星,星星的角度和数量都是有讲究的。在中国国旗上,红色象征革命,旗上的五颗五角星及其相互关系象征共产党领导下的革命人民大团结。五角星用黄色是为了在红底上显出光明,四颗小五角星各有一尖正对着大星的中心点,表示围绕着一个中心而团结。
当然啦,其他国家的国旗也有属于自己国家、自己历史的意义。比如冰岛,这可不是一个岛,他也是一个国家,他的国旗是这样的:
采用了红色、蓝色和白色,象征冰岛是屹立于汪洋大海的一个炽热而又被冰雪覆盖的美丽岛国,十字图案源自丹麦国旗图案,表示冰岛历史上与挪威、丹麦的关系。
国旗上面的图案虽然看起来简单,但是要画出来可不容易,今天我们就为大家准备了下面2种国旗,选择1种你觉得对自己有一定挑战的国旗,并通过图图将它画出来吧。
⛽️加油站—图层
在开始画图前我们需要再学习一个重要的知识——图层,认识了图层,你使用图图就能起到事半功倍的作用。
什么是图层呢?
其实非常简单,你可以理解成一张图是由多层图叠在一起的,比如下面的【瑞士国旗】:
它可以由两层组合在一起,最下面一层是红色,上面一层是白色的十字。所以,如果要使用图图,就可以先画最下面一层红色背景,再画白色的十字。
📺练习1
说说下面的【加拿大国旗】可以由几层组成,分别是哪几层呢?
答案:
可以有三层组成,最下面一层是红色长方形,中间层是白色长方形,最上面一层是红色枫叶。
🚀挑战1
「任务:绘制冰岛国旗 难度系数🌟🌟🌟」
参考:
设置成蓝色:t.color('#0048E0') 设置成红色:t.color('#FF0F00') 设置成白色:t.color('white')
参考坐标图:
🚀挑战2
「任务:绘制朝鲜国旗 难度系数🌟🌟🌟🌟」
参考:
(1)
设置成蓝色:t.color('#0048E0') 设置成红色:t.color('#FF0F00') 设置成白色:t.color('white')
(2)
五角星的小边长度为23
参考坐标图:
参考答案
🚀挑战1
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.color('#0048E0') #颜色设置成蓝色
t.begin_fill()
for i in range(2):
t.forward(250)
t.left(90)
t.forward(180)
t.left(90)
t.end_fill()
t.color('white') #颜色设置成白色,画竖直白色条纹
t.up()
t.goto(70,0)
t.down()
t.begin_fill()
for i in range(2):
t.forward(40)
t.left(90)
t.forward(180)
t.left(90)
t.end_fill()
t.color('white') #颜色设置成白色,画横向白色条纹
t.up()
t.goto(0,70)
t.down()
t.begin_fill()
for i in range(2):
t.forward(250)
t.left(90)
t.forward(40)
t.left(90)
t.end_fill()
t.color('#FF0F00') #颜色设置成白色,画竖直红色条纹
t.up()
t.goto(80,0)
t.down()
t.begin_fill()
for i in range(2):
t.forward(20)
t.left(90)
t.forward(180)
t.left(90)
t.end_fill()
t.color('#FF0F00') #颜色设置成白色,画横向红色条纹
t.up()
t.goto(0,80)
t.down()
t.begin_fill()
for i in range(2):
t.forward(250)
t.left(90)
t.forward(20)
t.left(90)
t.end_fill()
t.done()
🚀挑战2
import turtle as t
t.TurtleScreen._RUNNING = True
t.shape(name='turtle')
t.color('#0048E0') #颜色设置成蓝色
t.begin_fill()
for i in range(2):
t.forward(288)
t.left(90)
t.forward(144)
t.left(90)
t.end_fill()
t.color('white') #颜色设置成白色,画横向白色条纹
t.up()
t.goto(0,24)
t.down()
t.begin_fill()
for i in range(2):
t.forward(288)
t.left(90)
t.forward(96)
t.left(90)
t.end_fill()
t.color('#FF0F00') #颜色设置成红色,画横向红色条纹
t.up()
t.goto(0,28)
t.down()
t.begin_fill()
for i in range(2):
t.forward(288)
t.left(90)
t.forward(88)
t.left(90)
t.end_fill()
t.color('white') #颜色设置成白色,画圆
t.up()
t.goto(96,104)
t.down()
t.begin_fill()
for i in range(360):
t.forward(0.56)
t.right(1)
t.end_fill()
t.color('#FF0F00') #颜色设置成红色,画红色五角星
t.up()
t.goto(96,104)
t.down()
t.right(72)
t.begin_fill()
for i in range(5):
t.forward(23)
t.left(72)
t.forward(23)
t.right(144)
t.end_fill()
t.up()
t.goto(0,0)
t.down()
t.done()