您的位置:首页 > 职场人生

华为笔试题:将所给数据分解成质因数相乘形式 如435234=251*17*17*3*2

2013-04-25 21:45 274 查看
/***分解成质因数(如435234=251*17*17*3*2,华为笔试题)***/
#include<cstdio>
#include<iostream>

void prim(int m, int n)
{
if(m>n)
{
while(m%n != 0) n++;
m /= n;
prim(m, n);
printf("%d*", n);
}

}

void test()
{
int n=33;
while(n<512)
{
printf("%d=", n);
prim(n, 2);
printf("\n-----------------------\n");
n+=47;
}

}
int main(int argc, char* argv[])
{
int n = 435234;
printf("%d=", n);
prim(n, 2);
printf("\n-----------------------\n");
test();
}
/****************
435234=251*17*17*3*2*
-----------------------
33=11*3*
-----------------------
80=5*2*2*2*2*
-----------------------
127=127*
-----------------------
174=29*3*2*
-----------------------
221=17*13*
-----------------------
268=67*2*2*
-----------------------
315=7*5*3*3*
-----------------------
362=181*2*
-----------------------
409=409*
-----------------------
456=19*3*2*2*2*
-----------------------
503=503*
-----------------------

Process returned 0 (0x0)   execution time : 1.045 s
Press any key to continue.

*****************/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息