⑴ 使用c语言多重循环编写程序搜索100以内的所有可能的勾股数组合,并将它们分行显示出来
#include <stdio.h>
#define N 100
int main()
{
int i,j,k;
for(i=1;i<=N;i++)
for(j=1;j<=N;j++)
for(k=1;k<=N;k++)
if(i*i+j*j==k*k&&i<j&&j<k)//判断并且按从小到大的顺序输出
printf("\t%d\t%d\t%d\n",i,j,k);
}
⑵ 打印出100以内的勾股数对,即a2 + b2 = c2。怎么编程
for(a=0;a<100;a++)
for(b=0;b<100;b++)
for(c=0;c<100;c++)
{
if(a*a+b*b==c*c)
printf(a,b,c)
}
大概是这么个意思,自己看看吧
解答完毕。。。
⑶ c语言编程1到100的勾股数有几组
main()
{
int a,b,c;
for(a=1;a<=100;++a)
for(b=1;b<=100;++b)
for(c=1;c<=100;++c)
if(a*a+b*b==c*c)
printf("%d,%d,%d\n",a,b,c);
}
⑷ 用c++编程,打印出100内的所有的勾股数。勾股数就是满足x2+y2=z2的自然数。
#include <stdio.h>
int main()
{
int i,j,k;
for(i=1;i<=99;i++)
{
j=i+1;
for(;j<=100;j++)
{
int t=1;
for(;t<=150;t++)
{
if((j*j+i*i)==t*t)
{
printf("找到一组:%d*%d+%d*%d=%d*%d\n",i,i,j,j,t,t);
}
}
}
}
return 0;
}
结果:
找到一组:3*3+4*4=5*5
找到一组:5*5+12*12=13*13
找到一组:6*6+8*8=10*10
找到一组:7*7+24*24=25*25
找到一组:8*8+15*15=17*17
找到一组:9*9+12*12=15*15
找到一组:9*9+40*40=41*41
找到一组:10*10+24*24=26*26
找到一组:11*11+60*60=61*61
找到一组:12*12+16*16=20*20
找到一组:12*12+35*35=37*37
找到一组:13*13+84*84=85*85
找到一组:14*14+48*48=50*50
找到一组:15*15+20*20=25*25
找到一组:15*15+36*36=39*39
找到一组:16*16+30*30=34*34
找到一组:16*16+63*63=65*65
找到一组:18*18+24*24=30*30
找到一组:18*18+80*80=82*82
找到一组:20*20+21*21=29*29
找到一组:20*20+48*48=52*52
找到一组:20*20+99*99=101*101
找到一组:21*21+28*28=35*35
找到一组:21*21+72*72=75*75
找到一组:24*24+32*32=40*40
找到一组:24*24+45*45=51*51
找到一组:24*24+70*70=74*74
找到一组:25*25+60*60=65*65
找到一组:27*27+36*36=45*45
找到一组:28*28+45*45=53*53
找到一组:28*28+96*96=100*100
找到一组:30*30+40*40=50*50
找到一组:30*30+72*72=78*78
找到一组:32*32+60*60=68*68
找到一组:33*33+44*44=55*55
找到一组:33*33+56*56=65*65
找到一组:35*35+84*84=91*91
找到一组:36*36+48*48=60*60
找到一组:36*36+77*77=85*85
找到一组:39*39+52*52=65*65
找到一组:39*39+80*80=89*89
找到一组:40*40+42*42=58*58
找到一组:40*40+75*75=85*85
找到一组:40*40+96*96=104*104
找到一组:42*42+56*56=70*70
找到一组:45*45+60*60=75*75
找到一组:48*48+55*55=73*73
找到一组:48*48+64*64=80*80
找到一组:48*48+90*90=102*102
找到一组:51*51+68*68=85*85
找到一组:54*54+72*72=90*90
找到一组:56*56+90*90=106*106
找到一组:57*57+76*76=95*95
找到一组:60*60+63*63=87*87
找到一组:60*60+80*80=100*100
找到一组:60*60+91*91=109*109
找到一组:63*63+84*84=105*105
找到一组:65*65+72*72=97*97
找到一组:66*66+88*88=110*110
找到一组:69*69+92*92=115*115
找到一组:72*72+96*96=120*120
找到一组:75*75+100*100=125*125
找到一组:80*80+84*84=116*116
⑸ 用C程序求100以内勾股数。
所谓勾股数,就是对于a,b,c,存在a*a+b*b=c*c。
为去除重复,可令a<b,并对100以内的a,b遍历。如果存在满足的等式关系的c,则输出。
代码如下:
intmain()
{
inta,b,c;
for(a=1;a<100;a++)
for(b=a;b<100;b++)
{
intd=a*a+b*b;
if(d>10000)break;
for(c=b+1;c<100;c++)
{
inte;
e=c*c;
if(e==d)
printf("%d,%d,%d ",a,b,c);
if(e>=d)break;
}
}
}
⑹ 如何用C输出100以内的所有勾股数
#include <stdio.h>
int main()
{int a,b,c,k=0;
for(a=1;a<70;a++)
for(b=a+1;b<71;b++)
for(c=b+1;c<=100;c++)
if(a*a+b*b==c*c)
{ printf("%4d%4d%4d ",a,b,c);
k++;
}
printf("Total=%d ",k);
getch();
return 0;
}
⑺ 求100以内的勾股数(c语言编程)
#include
#include
int main()
{int a,b,c;
for(a=1;a<71;a++)
for(b=a;b<71;b++)
{
c=(int)sqrt(a*a+b*b+1);
if(c*c==a*a+b*b)
printf("%d %d %d
",a,b,c);
}
return 0;
}
⑻ 用C++输出100以内的基本勾股数,帮帮忙吧
#include<iostream>
boolishz(inta,intb,intc)
{
inti;
for(i=2;i<=a;i++)
if(a%i==0&&b%i==0&&c%i==0)break;
if(i>a)returntrue;
returnfalse;
}
intmain(void)
{
inti,j,k;
for(i=1;i<=100;i++)
for(j=i+1;j<=100;j++)
for(k=j+1;k<=100;k++)
if(i*i+j*j==k*k&&ishz(i,j,k))
printf("%d,%d,%d ",i,j,k);
return0;
}
⑼ C语言生成100以内的勾股数高效算法,急……
#include <stdio.h>
void Pyth()
{
int prime[5]={3,5,7,11,13};
int b[3]={0};
int i,j;
for(i=0;i<5;i++)
{
int x=prime[i];
b[0]=x;
b[1]=(x*x-1)/2;
b[2]=(x*x+1)/2;
for(j=1;j<=100/b[2];j++)
{
printf("%d,%d,%d\n",b[0]*j,b[1]*j,b[2]*j);
}
}
}
int main()
{
Pyth();
return 0;
}
⑽ 用c语言求解 输出1-50以内的所有勾股数
#include<stdio.h>
voidmain(){
inta,b,c;
for(a=2;a<=48;a++)
for(b=a+1;b<=49;b++)
for(c=b+1;c<=50;c++)
if(a*a+b*b==c*c)
printf("%-4d%-4d%-4d ",a,b,c);
}