#这题不会写,ai跑的
【问题描述】
已知babbage函数f(x)=x2+x+41,其中x为自然数,当x小于特定的整数n之前所有的函数值均为素数。
编写程序找出这个特定的最大n值。
要求:编写除主函数外,还需定义下列两个函数供主方法调用。
1、int isPrime(int n); //判断整数n是否是素数
2、int babbage(int x); //Babbage函数f(x)
【输入形式】无
【输出形式】一个整数n
【样例输入】
无
【样例输出】
40
#include <stdio.h>
#include <math.h>
int isPrime(int num)
{
if(num<=1)
return 0;
if(num<=3)
return 1;
if(num%2==0||num%3==0)
return 0;
int i=5;
while(i*i<=num)
{
if(num%i==0||num%(i+2)==0)
return 0;
i+=6;
}
return 1;
}
int main() {
int n;
for(n=0;n<1000;n++)
{
int result=n*n+n+41;
if (!isPrime(result))
{
break;
}
}
printf("%d\n",n);
return 0;
}