41是一个很特殊的质数质数41也是一个很特殊的质数,他是由6个连续的质数相加而得.41 = 2 + 3 + 5 + 7

1个回答

  • 我用C语言做出来了,但是你的范围太大,程序执行时间很长,在我电脑上能求10000以内的,只要改变循环里面的范围就行了

    #include

    bool fun(int n)

    {

    int i;

    for(i = 2; i < n; i++)

    if(n % i == 0)

    return false;

    return true;

    }

    int main()

    {

    int i,j,k,m,n,a = 0,min,max;

    for(j = 2; j < 1000; j++)

    {

    if(fun(j))

    {

    m = 0,k = 0;

    for(i = j; i a)

    {

    n = m;

    a = k;

    min = j;

    max = i;

    }

    }

    }

    }

    printf("从 %d 到 %d 的连续 %d 个质数和为%dn",min,max,k,n);

    return 0;

    }

    运行结果:

    #include

    bool fun(int n)

    {

    int i;

    for(i = 2; i < n; i++)

    if(n % i == 0)

    return false;

    return true;

    }

    int main()

    {

    int i,j,k,m,n,a = 0,min,max;

    for(j = 2; j < 1000; j++)

    {

    if(fun(j))

    {

    m = 0,k = 0;

    for(i = j; i a)

    {

    n = m;

    a = k;

    min = j;

    max = i;

    }

    }

    }

    }

    printf("从 %d 到 %d 的连续 %d 个质数和为%dn",min,max,a,n);

    return 0;

    }

    运行结果:

    从 3 到 317 的连续 65 个质数和为9521

    Press any key to continue

    改变范围后;

    从 7 到 89 的连续 21 个质数和为953

    Press any key to continue

    从 2 到 13 的连续 6 个质数和为41

    Press any key to continue