求一个数的质因素
package com.baidu.zhidao;
import java.util.Scanner;
public class PrimeFactor {
private static int k = 2;
public static void main(String[] args) {
while (true) {
try {
System.out.print("Type in a number(0 to Exit): ");
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
if (num == 0)
break;
num = num < 0 ? -num : num;
System.out.print("Number: " + num + " = ");
method(num);
System.out.println();
k = 2;
} catch (Exception e) {
System.out.println("Type in a number!");
}
}
}
private static void method(int num) {
while (k <= num) {
if (k == num) {
System.out.print(k);
break;
} else if (num > k && num % k == 0) {
System.out.print(k + "*");
method(num / k);
break;
} else if (num > k && num % k != 0) {
k++;
method(num);
break;
}
}
}
}