蓝桥杯Python初级组测试题之Turtle画图2
蓝桥杯Python初级组测试题之Turtle画图2
1. 画8个内接正五边形
题目描述
解题思路
(1) 共有n=8个正五边形,因而有8次循环,每次旋转角度增加ang=360/n
(2) 画内接正五边形用circle(raduis=50,steps=5)
(3) 设置画笔颜色用pencolor(‘blue’),隐藏画笔hideturtle()
import turtlen = 8
ang = 360 / n
h = 0
t = turtle.Turtle()
t.hideturtle()
t.pencolor('blue')
t.seth(90)
for i in range(n):# 每次递增1个ang角度h = ang * i# 向左旋转t.left(h)# 画内接正五边形t.circle(radius=50, steps=5)
turtle.done()
2. 画正方形内接圆
题目描述
解题思路
(1) 画正方形用goto最简单,设置坐标每次100
(2) 画圆用circle(raduis=50)刚好直径100,形成内切圆
(3) 设置画笔颜色用pencolor(‘red’),填充颜色fillcolor(‘yellow’),隐藏画笔hideturtle()
(4) 填充开始用begin_fill(),结束填充用end_fill()
import turtlet=turtle.Turtle()
t.hideturtle()
# 画正方形
t.pencolor('red')
t.goto(0,-100)
t.goto(100,-100)
t.goto(100,0)
t.goto(0,0)# 画圆形
t.penup()
t.goto(50,-100)
t.pendown()
t.fillcolor('yellow')
t.begin_fill()
t.circle(radius=50)
t.end_fill()
turtle.done()
3. 画三角形及内接步正六边形
题目描述
解题思路
(1) 为了简化绘画步骤,内接正六边形先用circle内接正六边形画,正六边形从圆心切割,是正三角形,因此半径=边长150
(2) 移动圆心位置到需要的位置goto(150,0)
(3) 画内接正六边形用t.circle(radius=150,steps=6)填充颜色fillcolor(‘green’)
(4) 循环画6个外部三角形,这个需要提前在草稿本上绘制路径
(5) 隐藏画笔hideturtle()
(6) 填充开始用begin_fill(),结束填充用end_fill()
import turtlet=turtle.Turtle()
t.hideturtle()
# 画正六边形
t.penup()
t.goto(150,0)
t.seth(90)
t.pendown()
t.fillcolor('red')
t.begin_fill()
t.circle(radius=150,steps=6)
t.end_fill()
# 画外部三角形
t.seth(0)
t.pencolor('white')
t.fillcolor('green')
for i in range(6):t.begin_fill()t.seth(60*(i+1))t.forward(150)t.left(120)t.forward(150)t.end_fill()
turtle.done()
4. 画扇子
题目描述
解题思路
(1)先计算起始角度,为(180-120)/2=30°,结束为30+120=150,每一度一次循环,可以用for也可以while True
(2)每一次画的时候,先抬笔退30就到了扇子底部,再一次画150+30就把一根线完整画出,再退150回到原点
(3)循环150次画出扇子
(4)充分利用forward(30)正向前进,而forward(-30)只是回退不改变方向的特点。
import turtle
t=turtle.Turtle()
# t.speed(speed=0)
t.hideturtle()
# 起始角度为30,每一度画一次起始(180-120)/2=30,结束30+120=150
ang1=30
while ang1<=150:t.penup()t.seth(ang1)# 回退到扇子底部,走30t.forward(-30)t.pendown()# 走到扇子底部,走150+30t.forward(180)# 抬笔回退150,回到原点t.penup()t.forward(-150)ang1+=1
5. 画彩色风扇
题目描述
解题思路
(1)用列表存储四种颜色,这样每次循环用下标刚好取到需要的填充颜色
(2)先把第一次画出来,再按照每次累加360/4=90进行循环
(3)第一次设置初始角度-45°,移动100,再左转90度,准备画扇形,这些需要反复练习
(4) t.circle(radius=100, extent=45)画45度的扇形,画完以后goto(0,0)进行封闭,第一个扇形画完了
(5)利用for i in range(4)循环四次,每次就是第一次的初始角度45+360/4*i就可以重复画出另外四个扇形了
import turtlet = turtle.Turtle()
# t.speed(speed=0)
t.hideturtle()
listc = ['red', 'yellow', 'blue', 'green']for i in range(4):# 依次从列表中获取颜色t.fillcolor(listc[i])t.begin_fill()# 设置初始角度为45°,后面每次累加360/4t.seth(-45+360/4*i)# 直行100t.forward(100)# 左转90度,以便画扇形,这个是试出来的t.left(90)# 画45°的扇形t.circle(radius=100, extent=45)# 封口t.goto(0, 0)t.end_fill()
turtle.done()
蓝桥杯Python初级组测试题之Turtle画图2相关推荐
- 蓝桥杯Python初级组测试题之Turtle画图
蓝桥杯Python初级测试题之Turtle画图 写这个主要是为了辅助和讲解过蓝桥杯的初级测试,难度并不高,重点在于解析过程. 画圆形和以及菱形阵列 思路: 第1步: 设置整体参数,如循环画菱形的次数为 ...
- 第十三届蓝桥杯Python B组国赛题解
第十三届蓝桥杯Python B组国赛题解 试题A:斐波那契与7 试题 B: 小蓝做实验 试题 C: 取模 试题 D: 内存空间 试题 E: 近似 GCD 试题 F: 交通信号 试题 G: 点亮 试题 ...
- 2022蓝桥杯 Python研究生组
经过二十天的准备,蓝桥杯拿到了Python研究生组省二,也算是一个还可以的结果了. 今年由于疫情,我这边改成了线上比赛,题型也变了,由原来的五个填空+五个编程,改成了两个填空+八个编程. 也是到了邻近 ...
- 2022年第十三届蓝桥杯 python B组 第B题 寻找整数
刚拿到这个题时用了很多方法,但都会花费大量的时间,后来我去补习了关于余数的知识--<中国剩余定理>##好像是小学数学知识..## 终于做出了该题. #######常识 1,首先我们要加深对 ...
- 十二届蓝桥杯python青少年组第五题——密室逃脱
密室逃脱 提示信息: 有一个密室逃脱游戏,有100间密室连在一排.密室编号是从1开始连续排列一直排到第100间密室,如下图: 游戏规则: 玩家初始位置在1号密室: 每次玩家可以进入右边的一个密室,也可 ...
- 第十一届蓝桥杯python大学组国赛真题
试题 A: 美丽的 2 [问题描述] 小蓝特别喜欢 2,今年是公元 2020 年,他特别高兴. 他很好奇,在公元 1 年到公元 2020 年(包含)中,有多少个年份的数位中包含数字 2? 这道题送分题 ...
- 2023.05.14十四届蓝桥杯青少组中高级组省赛Python
蓝桥杯大赛青少组 第十四届蓝桥杯Python中级组省赛 选择题: T1. 编程题 LQSS14PB01 时间限制: 3000MS 内存限制: 589824KB 题目描述:(注.input()输入函数 ...
- 第十三届蓝桥杯Python 大学B组真题详解
第十三届蓝桥杯Python B组真题详解 试题A 排列字母 试题B 寻找整数 试题C 纸张尺寸 试题D 位数排序 试题E 蜂巢 试题F 消除游戏 试题G 全排列的价值 试题H 技能升级 试题I 最长不 ...
- 蓝桥杯Python这一篇就够了-训练系统题库合集(包括VIP试题)数据结构与算法
第一版写于2020-11-13,第十一届蓝桥杯国赛前夕,老师和同学建议说写博文可以让学习更高效,陆陆续续写一些题解和学习笔记,在我的代码中我加了很多有助于理解程序的注释,希望这篇博客可以帮助你在蓝桥杯 ...
最新文章
- Java虚拟机(JVM)的内存划分
- C语言的预处理、编译、汇编、链接
- Fegion-3覆写Fegion的默认配置及Fegion的日志
- QT信号与槽机制需要注意的问题
- 使用OutputDebugString帮助调试
- 面试:数据分析面试SQL操作真题解析
- java copy-on-write_[Java并发-18-并发设计模式] COW模式:Copy-on-Write模式的应用领域
- 数据结构与算法之--高级排序:shell排序和快速排序
- ask调制matlab实验,ASK调制的matlab代码
- c语言贪吃蛇积分用什么函数,C语言之贪吃蛇(curses库函数)
- 数据结构——郝斌老师——部分笔记
- java坦克类的设计_纯JAVA坦克大战,可以做毕业设计
- vue项目设置ip访问
- 万国觉醒服务器维护,万国觉醒好像没看到1服怎么回事 官方关闭部分服务器公告[多图]...
- stm32f407能跑linux吗_stm32能跑linux吗
- 数据库设计的阶段及对应产物
- Mac电脑程序无响应怎么办?教你强制退出无响应程序
- 开源物联网应用开发平台列表
- 英语语法---比较级和最高级的用法
- 【云安全】全面了解云安全