质数因子
描述
功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )
数据范围: 1≤�≤2×109+14 1≤n≤2×109+14
输入描述:
输入一个整数
输出描述:
按照从小到大的顺序输出它的所有质数的因子,以空格隔开。
示例1
输入:
180
输出:
2 2 3 3 5
2 3 import java.util.Scanner; 4 5 public class HJ6 { 6 public static void main(String[] args) { 7 Scanner scanner = new Scanner(System.in); 8 Long num = scanner.nextLong(); 9 getZyz(num); 10 } 11 12 // num的所有质数,都不会大于num的平方根 13 private static void getZyz(Long num) { 14 int newNum = (int)Math.sqrt(num); 15 for (int i = 2; i <= num; i++) { 16 if (num%i==0) { 17 System.out.print(i+" "); 18 getZyz(num/i); 19 break; 20 } 21 if (newNum<i) { 22 System.out.print(num+" "); 23 break; 24 } 25 } 26 } 27 }