帮忙看看哪错了。。。。愁死了。。
1. 给定等式 A B C D E 其中每个字母代表一个数字,且不同数字对应不D F G 同字母。编程求出这些数字并且打出这个数字的
+ D F G 算术计算竖式。
───────
X Y Z D E
1.
#include<stdio.h>
#include<stdlib.h>
int Is_different(int a[]);
int main(void)
{
int a,b,c,d,e,f,g,x,y,z;
int temp[10];
a=b=c=d=e=f=g=x=y=z=0;
while(++a<=9)
while(++b<=9)
while(++c<=9)
while(++d<=9)
while(++e<=9)
while(++f<=9)
while(++g<=9)
while(++x<=9)
while(++y<=9)
while(++z<=9){
temp[0]=a;
temp[1]=b;
temp[2]=c;
temp[3]=d;
temp[4]=e;
temp[5]=f;
temp[6]=g;
temp[7]=x;
temp[8]=y;
temp[9]=z;
if(Is_different(temp) && a!=0 && x!=0)
if((a*10000+b*1000+c*100+d*10+e)+2*
(d*100+f*10+g)==(x*10000+y*1000+z*100+d*10+e)){
printf("此式子为:\n");
printf(" %d %d %d %d %d\n",a,b,c,d,e);
printf(" %d %d %d\n",d,f,g);
printf(" + %d %d %d\n",d,f,g);
printf("-----------------------\n");
printf(" %d %d %d %d %d\n",x,y,z,d,e);
}
}
system("pause");
return 0;
}
int Is_different(int a[])
{
int i,j;
for(i=0;i<=9;++i)
for(j=9;j>i;--j)
if(a[i]==a[j])return 0;
return 1;
}