用筛选法求100之内的素数

来源:互联网 发布:商场收租软件 编辑:程序博客网 时间:2024/06/05 16:48
/*         * Copyright (c) 2012, 烟台大学计算机学院         * All rights reserved.         * 作 者:  刘同宾       * 完成日期:2012 年 11 月 26 日         * 版 本 号:v1.0                 * 输入描述:    * 问题描述:用筛选法求100之内的素数。 * 程序输出:* 问题分析:略        * 算法设计:略         */#include<iostream>#include<iomanip>#include<cmath>using namespace std;int main(){cout<<"100以内的全部素数:"<<endl;int i,j,k;int a[101];for(i=1;i<=100;i++){a[i]=i;}a[1]=0;               //先挖掉a[1]for(i=2;i<sqrt(100);i++){for(j=i+1;j<=100;j++){if(a[i]!=0&&a[j]!=0){if(a[j]%a[i]==0){a[j]=0;           //把非素数挖掉,不是素数的都赋值为0}}}}cout<<endl;for(i=1,k=0;i<=100;i++)    {if(a[i]!=0)              //选出值不为0的数  即素数{cout<<setw(5)<<a[i];k++;}if(k==10)      //输出10个数后换行{cout<<endl;    k=0;}}cout<<endl;return 0;}

原创粉丝点击