紧急求助,一个Java的问题,程序中错误的地方就是被我注释掉的地方,希望各位高手帮忙一下
题目是这样的
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);
}*/
}
}
}
}
}
}
}