package java_practise;
import java.util.Scanner;
public class Hello {
public static void Calcu(int val) {
double tmp = val;
int i;
for(i=2; i<= Math.floor(Math.sqrt(tmp));i++) {
if(val%i == 0) {
System.out.print(i+"x"); //找到因数i
Calcu(val/i); //递归寻找因数
break;
}
}
if(i> Math.sqrt(tmp)) {
System.out.print(val); //直到没有因数,返回自身
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int value = in.nextInt();
System.out.print(value+"=");
Calcu(value);
}
}
递归实现质因数分解
最新推荐文章于 2023-06-18 19:34:24 发布