/**
* 自己写的实现四个数,前两个相同,后两个相同,并且是一个整数的平方
* @author Administrator
*
*/
public class demo6 {
public static void main(String[] args) {
int a = 0 ;
int b = 0 ;
int c = 0 ;
int d = 0 ;
List<Integer> list = new ArrayList<Integer>();
int all = 0;
boolean flag2 = true;
Random r = new Random();
//使用死循环,不断地得到随机的四个数,注意第一个不能是0;
//然后首先判断 前两个数字相同,后两个数字相同。
//然后再判断 得到的数字的 平方根 是一个整数;
//总体来讲,运用到了:随机得到四个数,死循环,数的平方根,如何判断一个数是整数;
while(flag2){
while(list.size()<4){
int num = r.nextInt(10);
list.add(num);
if(list.get(0)==0){
list = new ArrayList<Integer>();
}
}
for(int i=0;i<4;i++){
if(i==0){
a = list.get(i)*1000;
}
if(i==1){
b = list.get(i)*100;
}
if(i==2){
c = list.get(i)*10;
}
if(i==3){
d = list.get(i);
}
all = a+b+c+d;
}
if(list.get(0) == list.get(1) && list.get(2)==list.get(3)){
double jd = Math.sqrt(all);
int uu = (int)jd;
if((jd-uu) == 0){
flag2 = false;
}else{
list = new ArrayList<Integer>();
}
}else{
list = new ArrayList<Integer>();
}
}
System.out.println(all);
}
}