正整数分解质因数

将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5

程序分析:

 1、对于输入的某个数A,先找到它的最小质因数A1;

 --用A分别除以2到sqrt(A)之间的数,取第一个能整除的数返回;若全都不能整除则返回自身;

 2、对B=A/A1重复1步骤;

代码:

public static void main(String[] args) {
        System.out.println(resolve(90));
        System.out.println(resolve(255));
    }
    public static String resolve(int num){
        String result="";
        boolean isPrime=true;
        int length=(int)Math.sqrt(num);
        for(int k=2;k<=length;k++){
            if(num % k==0 ){
                int n=num/k;
                result=k+"*"+resolve(n);
                isPrime=false;
                break;
            }
        }
        if(isPrime){
            result=num+"";
        }
        return result;
    } 

 

输出-------

2*3*3*5
3*5*17

posted @ 2013-07-01 15:56  意义非凡  阅读(480)  评论(0)    收藏  举报