杭电 2012 素数判定
2015-08-06 11:31
393 查看
[align=left]Problem Description[/align]
对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数。
[align=left]Input[/align]
输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理。
[align=left]Output[/align]
对于每个给定范围内的取值,如果表达式的值都为素数,则输出"OK",否则请输出“Sorry”,每组输出占一行。
[align=left]Sample Input[/align]
[align=left]Sample Output[/align]
[/code]
对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数。
[align=left]Input[/align]
输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理。
[align=left]Output[/align]
对于每个给定范围内的取值,如果表达式的值都为素数,则输出"OK",否则请输出“Sorry”,每组输出占一行。
[align=left]Sample Input[/align]
0 1 0 0
[align=left]Sample Output[/align]
OK [code]#include<stdio.h> #include<string.h> #include<math.h> int main() { int x,y,i,j; int m,n,flag; while(scanf("%d%d",&x,&y),x|y) { for(i=x;i<=y;i++) { m=i*i+i+41; for(j=2;j<sqrt((double)m);j++) { if(m%j==0){ //逐个判断m是否为素数; flag=1; // 如果有一个不是就跳出循环 break; } else flag=0; } if(flag==1){ printf("Sorry\n"); break; } } if(flag==0) printf("OK\n"); } return 0; }
[/code]
相关文章推荐
- 面试总结10
- 网站服务架构
- Java自定义注解Annotation详解
- 201508061129_《移动开发之——防止触摸移动导致整个界面“露底”》
- ARM 原理MMU
- 自定义AppSession
- 解决jquery操作checkbox全选全不选无法勾选问题
- iOS Layer层相关,图片裁剪与形变
- hdu 5326 work (树的遍历)
- js中如何将GBK的英文转为普通英文, 全角转为半角
- JNI高级教程之数据类型转换
- bfs(广搜)
- 29. Element ownerDocument 属性
- mysql 插入/更新的简单方法
- 使用javascript的onsubmit进行表单合法性验证
- 1049:Climbing Worm
- 分解字符串
- springMVC接受请求数据的方法
- Unity+Metaio +IOS Xcode编译出错
- BigInteger权限判断示例,权限计算,setBit