怎么写质数

1. C语言求100以内的质数的和怎么写 #include <stdio.h>
#include <math.h>
int IsPrime(int n)
{
int i, s;
for(i = 2, s = sqrt(n); i <= s; i++)
if(n % i == 0) return 0;
return 1;
}
void main( )
{
int i, sum;
for(i = 2, sum = 0; i < 100; i++)
【怎么写质数】if(IsPrime(i)) sum += i;
printf("100以内的所有的质数的和为%d\n", sum);
}
2. 如何写个程序求100以内的质数 #include
#include
int ss(int n) /*检查n是否为素数,如果是则返回1,否则返回0*/
{
int i;
if(nfor (i=2; iif (n%i==0) return 0;
return 1;
}
int main(void)
{
int i,j=0;
for (i=1; iif(ss(i))
{
j++;
printf("%5d",i);
if (j%6==0) printf("\n");
}
printf("\ntotal prime=%d\n",j);
return 0;
}
3. 求一个最长最大的 质数 (要写出来) 质数的奥秘
质数的分布是没有规律的,往往让人莫名其妙 。如:101、401、601、701都是质数,但上下面的301(7*43)和901(17*53)却是合数 。
有人做过这样的验算:1^2+1+41=43,2^2+2+41=47,3^2+3+41=53……于是就可以有这样一个公式:设一正数为n,则n^2+n+41的值一定是一个质数 。这个式子一直到n=39时,都是成立的 。但n=40时,其式子就不成立了,因为40^2+40+41=1681=41*41 。
质数的性质
被称为“17世纪最伟大的法国数学家”费尔马,也研究过质数的性质 。他发现,设Fn=2^(2^n)+1,则当n分别等于0、1、2、3、4时,Fn分别给出3、5、17、257、65537,都是质数,由于F5太大(F5=4294967297),他没有再往下检测就直接猜测:对于一切自然数,Fn都是质数 。但是,就是在F5上出了问题!费尔马死后67年,25岁的瑞士数学家欧拉证明:F5=4294967297=641*6700417,并非质数,而是合数 。
更加有趣的是,以后的Fn值,数学家再也没有找到哪个Fn值是质数,全部都是合数 。目前由于平方开得较大,因而能够证明的也很少 。现在数学家们取得Fn的最大值为:n=1495 。这可是个超级天文数字,其位数多达10^10584位,当然它尽管非常之大,但也不是个质数 。质数和费尔马开了个大玩笑!
质数的假设
17世纪还有位法国数学家叫梅森,他曾经做过一个猜想:2^p-1代数式,当p是质数时,2^p-1是质数 。他验算出了:当p=2、3、5、7、17、19时,所得代数式的值都是质数,后来,欧拉证明p=31时,2^p-1是质数 。p=2,3,5,7时,Mp都是素数,但M11=2047=23*89不是素数 。
还剩下p=67、127、257三个梅森数,由于太大,长期没有人去验证 。梅森去世250年后,美国数学家科勒证明,2^67-1=193707721*761838257287,是一个合数 。这是第九个梅森数 。20世纪,人们先后证明:第10个梅森数是质数,第11个梅森数是合数 。质数排列得这样杂乱无章,也给人们寻找质数规律造成了困难 。
质数表上的质数
现在,数学家找到的最大的梅森数是一个有9808357位的数:2^32582657-1 。数学虽然可以找到很大的质数,但质数的规律还是无法循通 。
30000以内的质数表中的最后一位是
29989

怎么写质数

文章插图