ACM(022)素数求和(2)
2014-01-06 21:11
218 查看
素数求和问题
时间限制:3000 ms | 内存限制:65535 KB难度:2
描述 现在给你N个数(0<N<1000),现在要求你写出一个程序,找出这N个数中的所有素数,并求和。
输入 第一行给出整数M(0<M<10)代表多少组测试数据
每组测试数据第一行给你N,代表该组测试数据的数量。
接下来的N个数为要测试的数据,每个数小于1000 输出 每组测试数据结果占一行,输出给出的测试数据的所有素数和 样例输入
3 5 1 2 3 4 5 8 11 12 13 14 15 16 17 18 10 21 22 23 24 25 26 27 28 29 30
样例输出
10 41 52
来源 [hzyqazasdf]原创
上传者 hzyqazasdf
代码如下:
#include <iostream> using namespace std; #include <cmath>//用于 sqrt()函数 bool prime(int a);//判断一个数是否为素数 int main() { int n=0; cin>>n;//输入数据组数 while(n--) { int m,r=0;// r 为将输出的结果 cin>>m;//输入每组数据的个数 while(m--) { int a; bool p=1;//用于判断此数是否为素数 cin>>a;//输入一个数据 a p=prime(a);//判断 a 是否为素数 if(p==1)//若 a 为素数 r +=a;//则让输出结果 r 加一 } cout<<r<<endl;//输出 r } } bool prime(int a) { if(a<2) return 0; else { for(int i=2;i<=sqrt(a);i++)//只需判断到的 a 的开方处 { if(a%i==0)//若 i 为 a 的因数,则返回 false return 0; } return 1;//返回 true } }
相关文章推荐
- 另一段攻击记录
- Android 读取系统日志LogCat
- mongodb 副本集 创建
- MCSDK HUA Demonstration Guide
- js打印数组,js打印对象的方法(100遍)
- 由12306动态验证码想到的ASP.NET实现动态GIF验证码(附源码)
- ajax异步数据使用显示红色200问题
- 微信支付
- [Linux-7] linux内存文件系统指南
- ( standard c libraries translation )getpwnam
- swing jtable绑定数据库 获取用户选择行的数据
- 卫生事业发展“十二五”规划
- css li 去掉点的样式写法
- Ubuntu安装配置nfs服务
- 同步请求异步请求GET请求POST请求
- 进程空间
- 有趣的linux命令 - 太好玩了
- 《编写可维护的 JavaScript》读书笔记第17章:文件精简和压缩
- 配色方式
- 设计模式介绍之二:单例模式(Singleton)