1. 程式人生 > >【杭電-oj】-2012-素數判定

【杭電-oj】-2012-素數判定

Problem 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> 
int main()
{
    int x,y;
    while(~scanf("%d%d",&x,&y)&&(x||y))
    {
        int d=0;
        for(int n=x;n<=y;n++)
        {
            int z;
            z=n*n+n+41;
            for(int i=2;i<z;i++)
            {
                if(z%i==0)
                {
                    d=d+1;
                }    
            } 
        }
        if(d==0)
            printf("OK\n");
        else
            printf("Sorry\n"); 
    }
    return 0;
}