要發就發

求不超過1993的素數從小到大排成一行,第二行每個數等於上一行的相鄰兩兩相減,求第二行存在連續整數滿足和是1989?有幾種情況?

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int i,a[301]={0},b[300],sum,j,m=0,n=0,tag;
    static int k=0,count=0;
    for(i=2;i<=1993;i++)
    {   tag=1;
        for(j=2;j<=i/2;j++)
        {
            if(i%j==0)tag=0;//tag=0不是素數;
        }
        if(tag==1){
                count++;
            a[k]=i;
            k++;
        }
    }
   for(i=0;i<300;i++)
    {
       b[m]=a[i+1]-a[i];
       m++;
    }
    for(n=0;n<300;n++)
    {
        sum=0;
        for(m=n;m<300;m++)
    {
            sum=sum+b[m];
            if(sum==1898)printf("%d,%d\n",a[n],a[m+1]);
    }
}
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章