一个素数加上1000后是37的倍数,求满足这个条件的最小素数
用while循环从1003开始判断,符合条件就终止循环。
#include <stdio.h>
int prime(int n)
{
int i=2;
for (i=2;i<n;i++)
{
if(n%i==0) return 0;
}
return 1;
}
int main()
{
int n = 2;
while(1)
{
if( prime(n) && (1000+n)%37==0 )
break;
else
n++;
}
printf("%d",n);
return 0;
}
你题目的解答代码如下:
#include <stdio.h>
int isprime( int n);
int main()
{
int i=2;
while (1)
{
if(isprime(i) && (i+1000)%37==0){
printf("%d", i);
break;
}
i++;
}
return 0;
}
int isprime(int n)
{
int i;
if(n<=3) return n>1;
for(i=2;i*i<=n;i++)
if(n%i==0) return 0;
return 1;
}
如有帮助,望采纳!谢谢!
#include <stdio.h>
int main()
{
int n=0;
int j,m=0;
while(1)
{
for(j=2;j<n;j++)
if(n%j==0) break;
if(j>=n)
{
if((n+1000)%37==0)
{
printf("满足条件的最小素数为%d\n",n);
break;
}
}
n++;
}
}