package cn.sdut.chapter3;
import java.util.Scanner;
/*
* 质数因子
*功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )
*/
public class ClassTest07 {
public static void main(String[] args) {
System.out.println("请输入数字");
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
show(a);
System.out.println("\n--------------------------------分割线-------------------");
int num = 2;
while (true) {
if (a == 1) {
break;
}
if ((a % num) == 0) {
a = a / num;
System.out.print(num + " ");
} else {
num++;// 不用担心 num==4 的情况,因为num=2开的头 同理 num=9 121 都不考虑
}
}
}
private static void show(int a) {
int num = 2;
while (true) {
if (a == 1) {
break;
} else {
if (a % num == 0) {
System.out.print(num + " ");
a = a / num;
} else {
num++;
}
}
}
}
}