7月6日第一次训练题

2357变化的正三角形

image-20240628153145817

2358偶数车辆和

image-20240623174050751

image-20240623174057642

2361黑色印记

image-20240628154114419

2362挑选日期

image-20240623174130144

2363车辆统计

image-20240623175620853

image-20240623175632380

2367变化的正方形

image-20240628151021609

image-20240628150954532

2365矩形外框B

image-20240623180651332

7月6日课堂笔记

坐标

什么是坐标

坐标由两个数,通常是(x, y),表示一个点在水平 和垂直方向上的距离。如图红点所在的位置。我们将画x轴和y轴的交点坐标设置为(0,0)

红点离y轴的距离是x轴坐标,红点离x轴的距离是y轴坐标

因此红点的坐标(x,y)为(2,3)

image-20240629165446863

goc关于坐标的命令

坐标命令 功能 说明
名称:获取X坐标:getX( ) 获得笔当前位置的X坐标值,并返回这个值。 getX( )没有参数,但会返回X坐标值,是函数型命令。格式可以不用“pen.”开头。
名称:获取Y坐标:getY( ) 获得笔当前位置的Y坐标值,并返回这个值。 getY( )没有参数但会返回Y坐标值,是函数型命令。格式可以不用“pen.”开头。
名称:获取角度:getAngle( ) 获得笔当前的方向角度值,并返回这个值。 getAngle( )没有参数但会返回角度值,是函数型命令。格式可以不用“pen.”开头。
名称:设置角度:pen.setAngle( a ) 直接设置笔的方向为指定的角度。 setAngle命令不管现在笔的方向,直接定位到角度a。
名称:连线:pen.lineTo( x,y ) 笔的位置移动到指定的坐标,并画出线段。 lineTo命令会画出线条,但笔的方向不改变。
名称:移动 pen.moveTo( x, y ) 直接把笔的位置移动到指定的坐标,但不画图。 moveTo命令不会画出线条,笔的方向也不会改变。

勾股定理

假设给定一个直角三角形,直角相邻的两个边为a,b。最长的边为c,我们可以知道如下公式:
$$
a^2+b^2=c^2
$$
如果想知道c的长度,可以使用sqrt函数,代表开根,sqrt(16)=4,sqrt(4)=2
$$
c=\sqrt{a^2+b^2}=sqrt(aa+bb)
$$

当我们不知道某个边的长度时候,可以通过getY() 计算出长度。

image-20240629172121147

1
2
3
4
5
6
7
8
int main(){
//勾股定理 两个直角边的平方和=斜边的平方
//30 60的直角三角形 直角边100 斜边200
p.lt(90).fd(100);
p.setAngle(30).fd(200).setAngle(180);
p.fd(getY()).hide();
return 0;
}