质数因子

描述

功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )

详细描述:


函数接口说明:

    public String getResult(long ulDataInput)

输入参数:

         long ulDataInput:输入的正整数

返回值:

        String

知识点 排序
运行时间限制 10M
内存限制 128
输入

输入一个long型整数

输出

按照从小到大的顺序输出它的所有质数的因子,以空格隔开

样例输入 180
样例输出 2 2 3 3 5
package com.oj5;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Test {
	
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		long num = in.nextLong();
		int[] data = new int[41];
		
		int pos = 0;
		while(num!=1){
			int i;
			for(i = 2;i <= num; i++)
				if(num%i==0&&isPrime(i)){
					data[pos++] = i;
					break;
				}
			num /= i;
		}
		
		for(int i = 0;i < pos; i++)
			System.out.print(data[i]+" ");
		System.out.println();
	}

	private static boolean isPrime(int num) {
		boolean result = true;
		for(int i = 2;i < num/2; i++)
			if(num%i==0){
				result = false;
				break;
			}
		return result;
	}
	
}

  

原文地址:https://www.cnblogs.com/lxk2010012997/p/5391590.html