-5

その印刷 206 、どこが間違っているのですか?

#include<stdio.h>
#include<conio.h>

void main()
{
    int n ,c,m;
    n=100;
    c=0;

    while(n<1000)
    {
       for(m=2;m<10;m++)      //count c  for non prime numbers
       {
           if(n%m==0)
           {
               c++;
               m=100;
           }
       }
       n++;
    }
    printf("%d", 900-c);
    getch();
}
4

1 に答える 1

0

あなたのコードには重大な設計上の欠陥があります。最初から始めましょう:

下限がゼロに近い特定の範囲内の一連の素数をダンプする最も効率的な方法 (私の知る限り) は、エラトステネスのふるいアルゴリズムを使用することです。見る

Cのエラトステネスのふるいアルゴリズム

これは、与えられた数が素数であるかどうかを尋ねるのとは別の問題であることに注意してください。これは、テストする数の平方根を含む素数を反復することによって解決されることがよくあります。

于 2013-10-23T19:21:18.093 に答える