【30982/9652】 勾股定理
题目描述
在比赛期间,有一些有奖竞答活动,其中一个是找勾股定理的数。
已知有三个不超过150的正整数a、b、c,它们符合勾股定理:
a*a + b*b =c*c
数学家常常用边长分别是a,b,c的正方形来证明这个定理。如下面这个图
现在给你a和b,让你编程求出c,并用goc画出类似的简易图,如果不存在正整数的c,就不要画出大的正方形。
输入格式 一行2个不超过150的正整数。
输出格式 相应的图形。
输入/输出例子1
输入:
90 120
输出:
输入/输出例子2
输入:
100 80
输出:
题解
int main(){
int a,b,c;
cin >> a >> b;
c=0;
for (int i=1; i<=150; i++){
if (a*a+b*b==i*i)
c=i;
}
p.moveTo(-a/2.0,a/2).r(a,a);
p.moveTo(b/2.0,-b/2.0).r(b,b);
if (c>0){
p.moveTo(b,0).lineTo(b+a,b);
p.lineTo(a,b+a).lineTo(0,a).lineTo(b,0);
}
p.hide();
return 0;
}