使用双层循环
外层从2到
内层循环寻找质因数
import java.util.Scanner; /** * @author lxg * @description 质数因子 * @date 2021/9/26 */ public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); long num = input.nextLong(); String result = getResult(num); System.out.println(result); } /** * 获取输入数据的质因数组成的字符串结果 * @param num * @return */ public static String getResult(long num){ String result=""; for (long i = 2; i <=Math.sqrt(num) ; i++) { while(num%i==0){ num=num/i; result = result+i+" "; } } return num==1?result:result+num+" "; } }