题目描述
功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )
最后一个数后面也要有空格
输入描述:
输入一个long型整数
输出描述:
按照从小到大的顺序输出它的所有质数的因子,以空格隔开。最后一个数后面也要有空格。
示例1
输入
180
输出
2 2 3 3 5
网上搜索的好像都没我的简洁,测试通过效率应该还可以,代码如下:
import java.util.Scanner;
public class Main{
public static void handler(int num) {
while(num != 1) {
for(int i = 2; i <= num; ++i) {
if( num % i == 0) {
System.out.print( i + " ");
num = num / i;
break;
}
}
}
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
handler(sc.nextInt());
}
}
}
标签:输出,java,int,质数,空格,因子,输入
来源: https://www.cnblogs.com/zhouquan-1992-04-06/p/13796093.html