(笔试题)分解质因式

题目:

将某个正整数分解质因式,并输出分解结果。

代码:

1、递归

2、非递归

#include <iostream>

using namespace std;

// recursive
void prim1(int m,int n)
{
    if(m>n){
        while(m%n!=0) n++;
        m=m/n;
        prim1(m,n);
        cout<<n<<" ";
    }
}

// non-recursive
void prim2(int m,int n)
{
    while(m>n){
        while(m%n!=0) n++;
        m=m/n;
        cout<<n<<" ";
    }
}

int main()
{
    int n=435234;
    prim1(n,2);
    cout<<endl;
    prim2(n,2);
    cout<<endl;
    return 0;
}

运行结果:

 

posted @ 2015-05-13 17:19  AndyJee  阅读(425)  评论(0)    收藏  举报