素數判定 hd 2012

q923714892發表於2020-04-06
Description
對於表示式n^2+n+41,當n在(x,y)範圍內取整數值時(包括x,y)(-39<=x<y<=50),判定該表示式的值是否都為素數。
Input
輸入資料有多組,每組佔一行,由兩個整數x,y組成,當x=0,y=0時,表示輸入結束,該行不做處理。
Output
對於每個給定範圍內的取值,如果表示式的值都為素數,則輸出"OK",否則請輸出“Sorry”,每組輸出佔一行。
Sample Input

0 1
0 0
Sample Output

OK

#include <stdio.h>
#include <math.h>
int main()
{
	int x,y,a;
   while((scanf("%d %d",&x,&y)!=EOF)&&(x!=0||y!=0))
   {
   	int sum,bool1=0;
   	for (int n=x;n<=y;n++)
   	{
   		sum=n*n+n+41;
   		for (int i = 2; i < sum; i++)
   		{
   			if (sum%i==0)
			{
   				bool1=1;
   			break;
			}
   		}
   	}
   	if (bool1==0) printf("OK\n");
   	else  printf("Sorry\n");
   }
	return 0;
}


相關文章