多语言展示
当前在线:953今日阅读:91今日分享:37

筛去素数倍数的方法求整数的质因子C++如何实现

求一个整数的所有质因子,有很多方法,其实我们可以先筛去所有素数的偶数倍数,然后用素数整除所求的整数,最后得到的所有质数即为我们要求的整数质因子。如何用C++实现这一算法呢?小编与大家分享操作经验。
工具/原料

C++

方法/步骤
1

首先,定义一个整型常量,控制数组的元素个数。

2

定义5个整型变量,实现程序的运算。

3

接着,定义两个整型数组变量,保存是否素数的判断,以及是否整数的质因子。

4

给数组judge初始化,初始值为0。

5

输入一个整数,保存在变量n中。

6

用for循环,控制整数所有质因子的获取。

7

如果数i为质数,则执行下面的语句。

8

当i是整数n的质因子时,将整数i保存在数组prime中。

9

当i能整除m时,m的值变为m除i的值。

10

当整数i为素数时,从数组中筛去所有素数的倍数,将素数标志为1。

11

如果最后运算得到的m值大于1,则它是整数n的最后一个质因子,保存到数组prime中。

13

运行程序,输入任意一个整数,电脑就会计算出它的所有质因子。

注意事项

作者声明:本篇经验系本人辛勤劳动的原创成果,未经许可,谢绝转载。

推荐信息