用python写一个,根据用户输入的长宽在画布上画出一个纵向的长方形,并在右侧水平位置画出相同大小的纵向的长方形,根据用户输入的数值确定两个长方形的左右距离,注:两个长方形的长宽分别让用户输入,定义:“右边的长方形的左下角为A点,右下角为A0点,左上角为B点,右上角为B0点;左边长方形的右上角为C点,左上角为C0点,右下角为D点,左下角为D0点,并在图上标出A、A0、B、B0、C、C0、D、D0等点,在图上标出两个长方形的宽和高的数值
时间: 2023-05-11 08:02:37 浏览: 67
以下是用 Python 编写的代码,可以根据用户输入的长宽在画布上画出两个纵向的长方形,并在右侧水平位置画出相同大小的纵向的长方形,根据用户输入的数值确定两个长方形的左右距离。
```python
import turtle
# 获取用户输入的长和宽
width1 = int(input("请输入第一个长方形的宽度:"))
height1 = int(input("请输入第一个长方形的高度:"))
width2 = int(input("请输入第二个长方形的宽度:"))
height2 = int(input("请输入第二个长方形的高度:"))
# 获取用户输入的两个长方形的左右距离
distance = int(input("请输入两个长方形的左右距离:"))
# 创建画布和画笔
canvas = turtle.Screen()
pen = turtle.Turtle()
# 绘制第一个长方形
pen.penup()
pen.goto(-width1/2, 0)
pen.pendown()
pen.forward(width1)
pen.left(90)
pen.forward(height1)
pen.left(90)
pen.forward(width1)
pen.left(90)
pen.forward(height1)
# 绘制第二个长方形
pen.penup()
pen.goto(distance+width2/2, 0)
pen.pendown()
pen.forward(width2)
pen.left(90)
pen.forward(height2)
pen.left(90)
pen.forward(width2)
pen.left(90)
pen.forward(height2)
# 绘制右侧的长方形
pen.penup()
pen.goto(distance, -height1/2)
pen.pendown()
pen.forward(width2)
pen.left(90)
pen.forward(height2)
pen.left(90)
pen.forward(width2)
pen.left(90)
pen.forward(height2)
# 标出各个点的位置
pen.penup()
pen.goto(-width1/2, 0)
pen.dot()
pen.write("A")
pen.goto(width1/2, 0)
pen.dot()
pen.write("A0")
pen.goto(-width1/2, height1)
pen.dot()
pen.write("B")
pen.goto(width1/2, height1)
pen.dot()
pen.write("B0")
pen.goto(distance, -height1/2)
pen.dot()
pen.write("C")
pen.goto(distance+width2, -height1/2)
pen.dot()
pen.write("C0")
pen.goto(distance, -height1/2-height2)
pen.dot()
pen.write("D")
pen.goto(distance+width2, -height1/2-height2)
pen.dot()
pen.write("D0")
# 标出两个长方形的宽和高的数值
pen.penup()
pen.goto(-width1/2, -20)
pen.write("宽度:" + str(width1))
pen.goto(-width1/2, -40)
pen.write("高度:" + str(height1))
pen.goto(distance+width2/2, -20)
pen.write("宽度:" + str(width2))
pen.goto(distance+width2/2, -40)
pen.write("高度:" + str(height2))
# 隐藏画笔
pen.hideturtle()
# 显示画布
canvas.mainloop()
```
注意:以上代码中的注释已经标出了各个点的位置和两个长方形的宽和高的数值。