注册 登录
编程论坛 C++教室

怎么求100之内的素数

rockets 发布于 2008-10-12 13:29, 2056 次点击
怎么求100之内的素数
7 回复
#2
blueboy820062008-10-12 14:39
这个问题建议你自己想。。。。

发个参考见LX。。。

[[it] 本帖最后由 blueboy82006 于 2008-10-12 14:44 编辑 [/it]]
#3
blueboy820062008-10-12 14:40
int IsPrime(int a)
{
    for(int i=2;i<=a/2;i++)
    {
        if(a%i==0)
            return 0;
        else
            continue;
    }
    return 1;
}
#4
守护香一生2008-10-12 14:40
看看对不对
#include "math.h"
main()
{
 int m,i,k,h=0,leap=1;
 printf("\n");
 for(m=3;m<=100;m++)
  { k=sqrt(m+1);
   for(i=2;i<=k;i++)
     if(m%i==0)
      {leap=0;break;}
   if(leap) {printf("%-4d",m);h++;
        if(h%10==0)
        printf("\n");
        }
   leap=1;
  }
 printf("\nThe total is %d",h);
}
#5
kakaqq2008-10-12 19:26
算法是菜鸟···
#6
blueboy820062008-10-12 22:16
[bo][un]kakaqq[/un] 在 2008-10-12 19:26 的发言:[/bo]

算法是菜鸟···

#7
酷猫2008-10-12 22:31
哈~~~
#8
Soul寂2008-10-13 20:33
看看这个:
程序代码:
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
    int m,k;
    bool prime;
    for(m=0;m<=100;m=m+2)
    {
        prime=true;
        k=int(sqrt(m));
        for(int i=2;i<=k;i++)
            
            if(m%i==0)
            {    prime=false;
            break;
            }
            /*else
            prime=false;*/
            
            
            if(prime)
            {
                cout<<setw(5)<<m;
            }
    }
    cout<<endl;
    
    return 0;
}
1