很基础 但很麻烦的问题! 把任意给出的正整数分解质因数,比如90,最后输出 90 = 2*3*3*5这个输出想了很多方法不得其解,各位高手有什么好方法? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 static void zhi(int num) { if (num == 1) { System.out.print("1 "); } else { out: for (int i = 2; i <= num; i++) { if (num % i == 0) { System.out.print(i); num = num / i; if (num != 1) { System.out.print("* "); zhi(num); } break out; } } } } 我帮你写了个,应该是这样的,用for循环进行递归调用: public static void math(int init1,int init2,int n,int k,int sum){ int i; if(k>n){ /*如果k比n还大 则不能分*/ to2.getOption(); } else if(n<=6||n>200||k<2||k>6){ /*满足条件*/ to2.getOption(); } else{ if(init1>k) {if(n==sum){ MyJcomponent.count++; } return; } for(i=init2;i <=n;i++) /*在for()循环里进行递归调用*/ { math(init1+1,i,n,k,sum+i); } } } 关于Java中的String对象中的堆与栈的问题 String既然是不可变的,为啥不把length()方法改成length属性? Java Sing 用什么类来实现数据库中表的展示? 为什么我的按钮响应处理函数总是被调用两次?希望有详解 【散分啦】Show Me The Money~~~ HOHO~~~ 算法问题~ 怎么配置soap? 高手问题: 可滚动的ResultSet为什么不能转码? Java数组问题 面试:输出1^n+2^n+3^n+…+2008^n的个位数 在程序中为什么要用抽象类和接口??
if (num == 1) {
System.out.print("1 ");
} else {
out: for (int i = 2; i <= num; i++) {
if (num % i == 0) {
System.out.print(i);
num = num / i;
if (num != 1) {
System.out.print("* ");
zhi(num);
}
break out;
}
}
}
}
public static void math(int init1,int init2,int n,int k,int sum){
int i;
if(k>n){ /*如果k比n还大 则不能分*/
to2.getOption();
}
else if(n<=6||n>200||k<2||k>6){ /*满足条件*/
to2.getOption();
}
else{
if(init1>k) {if(n==sum){
MyJcomponent.count++;
}
return;
}
for(i=init2;i <=n;i++) /*在for()循环里进行递归调用*/
{
math(init1+1,i,n,k,sum+i);
}
}
}