【真题】青少年软件编程(Python一级)编程题:

梁老师
梁老师 北京小升初老师~

0 人点赞了该文章 · 52 浏览





1、题目

画出下面示意图形,要求如下:

(1)画出如下的图形,注:直线部分是由两个步长为200的线段垂直相交组成。

(2)圆的直径为200;

(3)图形的中心位置为画布中心;

(4)画笔宽度为2,颜色为红色。

图片

2、讲解

以下视频来源于
组队学习

3、答案

参考程序:

注意:仅供参考,画法和顺序,考生可以自行设计,结果符合题目即可。

import turtle

turtle.pencolor('red')
turtle.pensize(2)

turtle.penup()
turtle.goto(0-100)
turtle.pendown()
turtle.circle(100)
turtle.goto(0100)

turtle.penup()
turtle.goto(-1000)
turtle.pendown()
turtle.goto(1000)
turtle.done()

评分标准:

(1)正确导入turtle库;(1分)

(2)有前进命令;(1分)

(3)有画圆命令;(1分)

(4)有转直角弯命令;(1分)

(5)图形中心位置为画布中心;(1分)

(6)颜色和画笔宽度均达要求,各1分;(2分)

(7)运行正常;(1分)

(8)完成任务。(2分)

知识点:

(1)画笔落下:

pendown()/pd()/down()

turtle.pendown()
turtle.pd()
turtle.down()

(2)画笔抬起:penup()/pu()/up()

turtle.penup()
turtle.pu()
turtle.up()

画笔落下 -- 移动时将画线。

(3)画笔粗细:pensize()/width()

turtle.pensize(width=None)
turtle.width(width=None)

设置线条的粗细为 width 或返回该值。

  • width – 一个正数值
  • 无参:返回画笔的线条粗细。

【例子】

>>> turtle.pensize()
1
>>> turtle.pensize(10)   # from here on lines of width 10 are drawn

(4)画笔颜色:pencolor()

turtle.pencolor(*args)

返回或设置画笔颜色。

  • turtle.pencolor():返回以颜色描述字符串或元组表示的当前画笔颜色。
  • turtle.pencolor(colorstring):设置画笔颜色为 colorstring 指定的颜色描述字符串,例如 "red"、"yellow" 或 "#33cc8c"。
  • turtle.pencolor((r, g, b)):设置画笔颜色为以 r, g, b 元组表示的 RGB 颜色。
  • turtle.pencolor(r, g, b):设置画笔颜色为 r, g, b 表示的 RGB 颜色。

【例子】

>>> turtle.colormode()
1.0
>>> turtle.pencolor()
'red'
>>> turtle.pencolor("brown")
>>> turtle.pencolor()
'brown'
>>> tup = (0.20.80.55)
>>> turtle.pencolor(tup)
>>> turtle.pencolor()
(0.20.80.5490196078431373)
>>> turtle.colormode(255)
>>> turtle.pencolor()
(51.0204.0140.0)
>>> turtle.pencolor('#32c18f')
>>> turtle.pencolor()
(50.0193.0143.0)

(5)前往/定位:

goto()/setpos()/setposition()

turtle.goto(x, y=None)
turtle.setpos(x, y=None)
turtle.setposition(x, y=None)

海龟移动到一个绝对坐标,如果画笔已落下将会画线,不改变海龟的朝向。

  • x -- 一个数值或数值对/向量
  • y -- 一个数值或 None

如果 y 为 Nonex 应为一个表示坐标的数值对或 Vec2D 类对象 (例如 pos() 返回的对象)。

(6)画圆:circle()

turtle.circle(radius, extent=None, steps=None)
  • radius -- 一个数值(整型或浮点型),表示半径
  • extent -- 一个数值 (整型或浮点型),表示角度
  • steps -- 一个整型数(或 None)

绘制一个指定半径为radius的圆。

  • radius :弧形半径
    • 当radius值为正数时,圆心在当前位置/小海龟左侧
    • 当radius值为负数时,圆心在当前位置/小海龟右侧

extent为一个夹角,用来决定绘制圆的一部分。如未指定extent则绘制整个圆。如果extent不是完整圆周,则以当前画笔位置为一个端点绘制圆弧。最终海龟的朝向会依据extent的值而改变。

  • extent :弧形角度。当无该参数或参数为None时,绘制整个圆形。
    • 当extent值为正数时,顺小海龟当前方向绘制。
    • 当extent值为负数时,逆小海龟当前方向绘制。
图片

圆实际是以其内切正多边形来近似表示的,其边的数量由steps指定。如果未指定边数则会自动确定。此方法也可用来绘制正多边形。

【例子】

import turtle

turtle.circle(50270)
turtle.done()
图片

【例子】

import turtle

turtle.circle(-50270)
turtle.done()
图片

【例子】

import turtle

turtle.circle(50-270)
turtle.done()
图片

【例子】

import turtle

turtle.circle(-50-270)
turtle.done()
图片

【例子】

>>> turtle.home()
>>> turtle.position()
(0.00,0.00)
>>> turtle.heading()
0.0
>>> turtle.circle(50)
>>> turtle.position()
(-0.00,0.00)
>>> turtle.heading()
0.0
>>> turtle.circle(120180)  # draw a semicircle
>>> turtle.position()
(0.00,240.00)
>>> turtle.heading()
180.0

图片


添加 家长论坛微信 



发布于 2024-04-24 22:33

免责声明:

本文由 梁老师 原创发布于 家长帮 ,著作权归作者所有。

登录一下,更多精彩内容等你发现,贡献精彩回答,参与评论互动

登录! 还没有账号?去注册

暂无评论

广告
All Rights Reserved Powered BY WeCenter V4.1.0 © 2025 京ICP备20005761号-2