OJ------质数因子
2016-08-14 10:38
155 查看
输入一个整数,按顺序输出他的质数因子:
分析:该数等于所有因子的乘积,
while(tmp*i<=num&&num%(tmp*i)!=0)
{
i++;
}
tmp=tmp*i;
(不许用判断是否是质数,结果一定是质数)
分析:该数等于所有因子的乘积,
while(tmp*i<=num&&num%(tmp*i)!=0)
{
i++;
}
tmp=tmp*i;
(不许用判断是否是质数,结果一定是质数)
import java.util.Scanner; public class test{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); int num=sc.nextInt(); sc.close(); int tmp=1; boolean isfirst=true; while(tmp<=num) { int i=2; while(tmp*i<=num&&num%(tmp*i)!=0) { i++; } tmp=tmp*i; if(tmp<=num) { if(!isfirst) { System.out.print(" "); } else { isfirst=false; } System.out.print(i); } } } }