题目是这样的
a b c d e
+ 2 0 0 8 5
------------
A B C D E
a,b,c,d,e,A,B,C,D,E必须是0-9的数字,且不可以重复。
下面是我的程序:public class funnyplay {
public static void main(String args[])
{
int a,b,c,d,e,A,B,C,D,E,i,j;//定义各个变量
int b1,c1,d1,e1;
int num1,num2;
num1=num2=0;
int[] p= new int[10];//十个元素的数组来存放a,b,c,d,e,A,B,C,D,E
for(e=0;e<=9;e++)
{
E=(e+5)%10;
e1=(e+5)/10;//进位
p[0]=e;
p[5]=E;
for(d=0;d<=9;d++)
{
D=(d+8+e1)%10;
d1=(d+8+e1)/10;//进位
p[1]=d;
p[6]=D;
for(c=0;c<=9;c++)
{
C=(c+d1)%10;
c1=(c+d1)/10;//进位
p[2]=c;
p[7]=C;
for(b=0;b<=9;b++)
{
B=(b+c1)%10;
b1=(b+c1)/10;//进位
p[3]=b;
p[8]=B;
for(a=1;a<=9;a++)
{
A=(a+b1)%10;
p[4]=a;
p[9]=A;
if((a+b1)/10!=0)
continue;//如果到第五位还有进位,就继续a++
//下面一段注释了的语句出错了;
/*P:
{
for(i=0;i<=9;i++)
{
for(j=i+1;j<=9;j++)
{
if(p[i]==p[j])
break P; //判断数组中是否有重复,如果有的话就终止以下所有操作,继续a++
}
}
for(i=4;i>=0;i--)
{
num1=num1*10+p[i]; //num1=abcde
}
for(i=9;i>=5;i--)
{
num2=num2*10+p[i]; //num2=ABCDE
}
System.out.println("解是:"+num1+"和"+num2);
}*/
}
}
}
}
}
}}
a b c d e
+ 2 0 0 8 5
------------
A B C D E
a,b,c,d,e,A,B,C,D,E必须是0-9的数字,且不可以重复。
下面是我的程序:public class funnyplay {
public static void main(String args[])
{
int a,b,c,d,e,A,B,C,D,E,i,j;//定义各个变量
int b1,c1,d1,e1;
int num1,num2;
num1=num2=0;
int[] p= new int[10];//十个元素的数组来存放a,b,c,d,e,A,B,C,D,E
for(e=0;e<=9;e++)
{
E=(e+5)%10;
e1=(e+5)/10;//进位
p[0]=e;
p[5]=E;
for(d=0;d<=9;d++)
{
D=(d+8+e1)%10;
d1=(d+8+e1)/10;//进位
p[1]=d;
p[6]=D;
for(c=0;c<=9;c++)
{
C=(c+d1)%10;
c1=(c+d1)/10;//进位
p[2]=c;
p[7]=C;
for(b=0;b<=9;b++)
{
B=(b+c1)%10;
b1=(b+c1)/10;//进位
p[3]=b;
p[8]=B;
for(a=1;a<=9;a++)
{
A=(a+b1)%10;
p[4]=a;
p[9]=A;
if((a+b1)/10!=0)
continue;//如果到第五位还有进位,就继续a++
//下面一段注释了的语句出错了;
/*P:
{
for(i=0;i<=9;i++)
{
for(j=i+1;j<=9;j++)
{
if(p[i]==p[j])
break P; //判断数组中是否有重复,如果有的话就终止以下所有操作,继续a++
}
}
for(i=4;i>=0;i--)
{
num1=num1*10+p[i]; //num1=abcde
}
for(i=9;i>=5;i--)
{
num2=num2*10+p[i]; //num2=ABCDE
}
System.out.println("解是:"+num1+"和"+num2);
}*/
}
}
}
}
}
}}
解决方案 »
- 问个java问题
- java中如何用正则表达式替换图片的地址?
- Java程序的一个错误cannot resolve symbol
- FileInputStream的Read方法的两次输出问题?
- 如何时java程序成为一个后台进程
- HTML页面提交的值,JAVASCRIPT如何取得,我需要实现JAVASC RIPT操作数据库,表单中提交的内容,插入数据库,现在我不能取到提交后的值,没有后
- JTable刷新问题!在线急等!!!
- java如何提交网页
- 那里有新的jcreator 下在,最好有cd key的
- 要在WEB模式下做一个报表,怎么实现?
- 选择题
- javascript的open()打开一个窗体如何实现?
public static int panduan(int[] n)
{
for(int m=0;m<=9;m++)
{
for(int r=m;r<=9;r++)
{
if(n[m]==n[r])
return 0;
}
}
return 1;
}
public static void main(String args[])
{
int a,b,c,d,e,A,B,C,D,E,i,j;//定义各个变量
int b1,c1,d1,e1;
int num1,num2;
num1=num2=0;
int[] p= new int[10];//十个元素的数组来存放a,b,c,d,e,A,B,C,D,E
for(e=0;e<=9;e++)
{
E=(e+5)%10;
e1=(e+5)/10;//进位
p[0]=e;
p[5]=E;
for(d=0;d<=9;d++)
{
D=(d+8+e1)%10;
d1=(d+8+e1)/10;//进位
p[1]=d;
p[6]=D;
for(c=0;c<=9;c++)
{
C=(c+d1)%10;
c1=(c+d1)/10;//进位
p[2]=c;
p[7]=C;
for(b=0;b<=9;b++)
{
B=(b+c1)%10;
b1=(b+c1)/10;//进位
p[3]=b;
p[8]=B;
for(a=1;a<=9;a++)
{
A=(a+b1)%10;
p[4]=a;
p[9]=A;
if((a+b1)/10!=0)
continue;//如果到第五位还有进位,就继续a++
/*j=panduan(p);
if(j==0) //这里调用判断函数
continue;*/
for(i=4;i>=0;i--)
{
num1=num1*10+p[i]; //num1=abcde
}
for(i=9;i>=5;i--)
{
num2=num2*10+p[i]; //num2=ABCDE
}
System.out.println("解是:"+num1+"和"+num2);
}
}
}
}
}
}}