一个素数加上1000后是37的倍数,求满足这个条件的最小素数

一个素数加上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++;
}
}