编写一个函数判断是否为素数

如题所述

编写一个函数判断是否为素数如下:

算法:

1.令x为2。

2将2x、3x、4x直至ax<n的数标记为非素数。

3.令x为下一个没有被标记为非素数的数,重复2;直到所有的数都已经尝试完毕。

伪代码:

1.开辟prime[n],初始化其所有元素为1,prime[x]为1表示x是素数。

2.令x=2。

3.如果x是素数,则对于(i=2;x*i<n;i++)令prime[ix]=0。

4.令x++,如果x<n,重复3,否则结束。

拓展材料:素数

简介

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。

应用

质数被利用在密码学上,所谓的公钥就是将想要传递的信息在编码时加入质数,编码之后传送给收信人,任何人收到此信息后,若没有此收信人所拥有的密钥,则解密的过程中(实为寻找素数的过程),将会因为找质数的过程(分解质因数)过久,使即使取得信息也会无意义。

在汽车变速箱齿轮的设计上,相邻的两个大小齿轮齿数设计成质数,以增加两齿轮内两个相同的齿相遇啮合次数的最小公倍数,可增强耐用度减少故障。在害虫的生物生长周期与杀虫剂使用之间的关系上,杀虫剂的质数次数的使用也得到了证明。

实验表明,质数次数地使用杀虫剂是最合理的:都是使用在害虫繁殖的高潮期,而且害虫很难产生抗药性。以质数形式无规律变化的导弹和鱼雷可以使敌人不易拦截。多数生物的生命周期也是质数(单位为年),这样可以最大程度地减少碰见天敌的机会。

温馨提示:答案为网友推荐,仅供参考