import turtle
# 设置画布
screen = turtle.Screen()
screen.title("第七次实验作业7.2")
screen.bgcolor("white")
# 创建Turtle对象
t = turtle.Turtle()
t.pensize(4)
t.speed(0) # 设置绘制速度
# 定义多边形的边长、间距和圆的半径
side_length = 130
spacing = 20
radius = 50
# 计算总宽度
total_width = 6 * (side_length + spacing) + 2 * radius
# 移动Turtle到起始位置
t.penup()
t.goto(-total_width / 2 + side_length / 2 + 50, 0)
# 颜色列表
colors = ["red", "blue", "green", "pink", "black"]
# 绘制3到6边形和圆,并控制间距
for i, color in enumerate(colors):
t.color(color) # 设置当前图形的颜色
t.pendown()
if i == len(colors) - 1: # 最后一个图形为圆形
t.circle(27)
else:
for _ in range(i + 3):
t.forward(180 / (i + 3))
t.left(360 / (i + 3))
t.penup()
t.forward(side_length + spacing)
# 隐藏turtle并保持窗口打开
screen.mainloop()
运行结果:
import turtle
# 设置画布
screen = turtle.Screen()
screen.title("第七次实验作业7.2")
screen.bgcolor("white")
# 创建Turtle对象
t = turtle.Turtle()
t.pensize(4)
t.speed(0) # 设置绘制速度
# 定义多边形的边长、间距和圆的半径
side_length = 130
spacing = 20
radius = 50
# 计算总宽度
total_width = 6 * (side_length + spacing) + 2 * radius
# 移动Turtle到起始位置
t.penup()
t.goto(-total_width/2 + side_length/2+50, 0)
# 颜色列表
colors = ["red", "blue", "green", "pink", "black"]
# 绘制3到6边形和圆,并控制间距
for i, color in enumerate(colors):
t.color(color) # 设置当前图形的颜色
t.begin_fill()
t.pendown()
if i == len(colors) - 1: # 最后一个图形为圆形
t.circle(27)
else:
for _ in range(i + 3):
t.forward(180/(i + 3))
t.left(360 / (i + 3))
t.end_fill()
t.penup()
t.forward(side_length + spacing)
# 隐藏turtle并保持窗口打开
screen.mainloop()
运行结果:
import turtle
import numpy as np
# 提示用户输入三个点的坐标
points = input("请输入三个点的坐标(格式:x1 y1 x2 y2 x3 y3):")
# 将输入的坐标转换为数组
point_coords = list(map(int, points.split()))
# 将坐标分成三个点
p1 = np.array([point_coords[0], point_coords[1]])
p2 = np.array([point_coords[2], point_coords[3]])
p3 = np.array([point_coords[4], point_coords[5]])
# 计算三角形的面积
area = 0.5 * abs((p2[0] - p1[0]) * (p3[1] - p1[1]) - (p3[0] - p1[0]) * (p2[1] - p1[1]))
# 初始化Turtle画布
screen = turtle.Screen()
screen.title("第七次实验作业7.3")
screen.setup(600, 400)
# 创建Turtle对象
t = turtle.Turtle()
# 绘制三角形
t.penup()
t.goto(p1[0], p1[1])
t.pendown()
t.goto(p2[0], p2[1])
t.goto(p3[0], p3[1])
t.goto(p1[0], p1[1])
# 在每个点上标出坐标
t.penup()
t.goto(p1[0], p1[1])
t.pendown()
t.write(f"P1 ({p1[0]}, {p1[1]})", align="left", font=("Arial", 10, "normal"))
t.penup()
t.goto(p2[0], p2[1])
t.pendown()
t.write(f"P2 ({p2[0]}, {p2[1]})", align="right", font=("Arial", 10, "normal"))
t.penup()
t.goto(p3[0], p3[1])
t.pendown()
t.write(f"P3 ({p3[0]}, {p3[1]})", align="right", font=("Arial", 10, "normal"))
# 在三角形下方显示面积
t.penup()
t.goto((p1[0] + p2[0] + p3[0]) / 3, min(p1[1], p2[1], p3[1]) - 20)
t.pendown()
t.write("面积是: {:.2f}".format(area), align="center", font=("Arial", 12, "normal"))
# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()
运行结果:
import turtle
# 设置画布
turtle.setup(width=200, height=200)
screen = turtle.Screen()
screen.bgcolor("white")
turtle.title("第七次实验作业7.4.1")
# 创建Turtle对象
t = turtle.Turtle()
t.speed(0)
t.color("blue")
# 绘制蓝色正方形螺线图(增加间隔)
for i in range(100):
t.forward(i)
t.right(90)
# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()
import turtle
import random
# 设置画布
screen = turtle.Screen()
screen.bgcolor("white")
turtle.title("第七次实验作业7.4.2")
# 创建Turtle对象
t = turtle.Turtle()
t.speed(0)
# 定义颜色列表(八种颜色)
colors = ['blue', 'yellow', 'green', 'green', 'blue', 'purple', 'pink', 'brown']
# 绘制彩色正方形螺线图
for i in range(300):
t.pencolor(colors[random.randint(0,7)]) # 切换颜色
t.forward(i)
t.right(90)
t.penup()
t.pendown()
# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()
import turtle
# 设置画布
screen = turtle.Screen()
screen.bgcolor("white")
turtle.title("第七次实验作业7.5")
# 创建Turtle对象
t = turtle.Turtle()
t.speed(0)
t.penup()
# 设置起始位置
start_x = -200
start_y = 200
# 定义每个格子的大小
square_size = 50
# 绘制黑白相间的棋盘
for i in range(8): # 8行
for j in range(8): # 8列
if (i + j) % 2 == 0:
t.goto(start_x + j * square_size, start_y - i * square_size)
t.pendown()
t.begin_fill()
t.fillcolor("black")
for _ in range(4):
t.forward(square_size)
t.right(90)
t.end_fill()
t.penup()
# 绘制黑色边框
t.goto(start_x, start_y)
t.pendown()
t.pensize(2)
t.color("black")
for _ in range(4):
t.forward(8 * square_size)
t.right(90)
# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()