编写出判断一个整数是否为素数的函数,并求出在2000以内的有十个以上的所有连续的非素数组。
#include <stdio.h>
int isprime(int n)
{
for(int i=2;i*i<=n;i++)
if(n%i==0)
return 0;
return 1;
}
int main()
{
int s = -1;
int count = 0;
for(int i=2;i<=2000;i++)
{
if(isprime(i))
{
if(count>=10)
{
for(int j=s;j<s+count;j++)
printf("%d ",j);
printf("\n");
}
count = 0;
s=-1;
}
else
{
if(s==-1)
s=i;
count++;
}
}
return 0;
}
请搜索 ‘判断素数’, 就可以找到很多例子。
#include<iostream>
#include<math>
int func(int n)
{
int i,k=(int)sqrt(n)+l;
for(i=2;i<k;i++)
{
if(n%i=0) break;
if(i==k) return 1;
else return 0;
}
}
int main()
{
int m,i,j,h=0;
for(m=0;m<=2000;m++)
{
h=0;
if(func(m) == 1)
{
for(i=1;;i++)
{
if((func(m+i)==0) && (m+i<=2000))
h++;
else break;
}
m = m + i;
if(h>=9)
{
for(j=i-1;j>=-1;j--)
cout<<m-j<<"";
cout<<endl;
}
}
else continue;
}
return 0;
}