/**
* 时间:2012年11月15日 18:54:54
* 内容:一道面试题: 把一个数分解成最小乘积
* 请输入要分解的数字:90
* 90=2*3*3*5
* 请输入要分解的数字:123
* 123=3*41
*/
private static void resolve() {
int exit = 1;
while(exit==1){
try {
System.out.print("请输入要分解的数字:");
Scanner sc = new Scanner(System.in);
int hei = sc.nextInt();
if(hei==0)
break;
int temp = hei;
boolean flag = true;
boolean t = false;
StringBuilder sb = new StringBuilder();
while(flag){
for(int i=3; i<=temp; i+=2){
if(i==3 && temp%2==0){
sb.append("2*");
temp=temp/2;
break;
}
if(temp%i==0){
sb.append(i+"*");
temp = temp/i;
if(temp==1){
flag = false;
}
break;
}
}
}
String result = sb.toString();
result = result.substring(0, result.length()-1);
System.out.println(hei+"="+ result);
} catch (Exception e) {
System.err.println("请输入数字..");
}
}
System.out.println("退出..............");
}