反素数java_【Java自学】 反素数
1 packagecodeTask_FangFa;2 //5.27 反素数:1.是一个素数。2.其反转过来也是一个素数。3.不能是回文数。
3 public classFanSuShu {4 public static voidmain(String[] args){5 int number= 2;6 for(int count =0;count<100;number++){7 if(isNotHuiWen(number)){8 if(isSuShu(number)){9 if(isFanZhuanSuShu(number)){10 count++;11 if(count%10==0){12 System.out.printf("%8d\n",number);13 }14 else{15 System.out.printf( "%8d", number);16
17 }18 }19 }20 }21
22 }23
24 }25
26 public static boolean isNotHuiWen(int number){ //不是回文数就true
27
28 if(number<10)29 return false;30 else if(number<100){31 int ge = number%10;32 int shi = number/10;33 return !(ge==shi);34 }35 else if(number<1000){36 int ge = number%10;37 int bai = number/100;38 return !(ge ==bai);39 }40 else if(number<10000){41 int ge = number%10;42 int qian = number/1000;43 int shi = (number%100)/10;44 int bai = (number/100)%10;45 return !(ge==qian&shi==bai);46 }47 else if(number<100000){48 int ge = number%10;49 int wan = number/10000;50 int shi = (number%100)/10;51 int qian = (number/100)%10;52 return !(ge==wan&shi==qian);53 }54 return false; //暂时估计前100个回文素数在钱10w个数里了。
55 }56
57 public static boolean isSuShu(int number){ //是素数就true
58 for(int i = 2 ;i<=number/2;i++){59 if(number%i==0)60 return false;61 }62
63 return true;64 }65 //在这里,先反转,再判断是不是素数,可以借用上面的 isSuShu 方法。bingo.
66 public static boolean isFanZhuanSuShu(int number){ //反转过来也是素数的话,true.
67 if(number<100){ //这里不用考虑1-10了,因为1-9肯定是回文数,前面排除了。10肯定不是素数,上面那个方法也排除了。
68 int ge = number%10;69 int shi = number/10;70 int number1 = ge*10+shi;71 returnisSuShu(number1);72 }73 else if (number<1000){74 int ge = number%10;75 int shi = (number%100)/10;76 int bai = number/100;77 int number1 = ge*100+shi*10+bai;78 returnisSuShu(number1);79 }80 else if(number<10000){81 int ge = number%10;82 int shi = (number%100)/10;83 int bai = (number%1000)/100;84 int qian = number/1000;85 int number1 = ge*1000+shi*100+bai*10+qian;86 returnisSuShu(number1);87 }88 else if (number<100000){89 int ge = number%10;90 int shi = (number%100)/10;91 int bai = (number%1000)/100;92 int qian = (number%10000)/1000;93 int wan = number/10000;94 int number1 = ge*10000+shi*1000+bai*100+qian*10+wan;95 return isSuShu(number1); //这里也只是算到99999,也就是说,默认前一百个反素数是在99999前面的,包含它。
96 }97 return false;98 }99
100
101
102 }
package codeTask_FangFa;//5.27 反素数:1.是一个素数。2.其反转过来也是一个素数。3.不能是回文数。public class FanSuShu {public static void main(String[] args){int number= 2;for(int count =0;count<100;number++ ){if(isNotHuiWen(number)){if(isSuShu(number)){if(isFanZhuanSuShu(number)){count++;if(count%10==0){System.out.printf("%8d\n",number);}else{System.out.printf( "%8d", number);}}}}}}public static boolean isNotHuiWen(int number){ //不是回文数就true
if(number<10)return false;else if(number<100){ int ge = number%10; int shi = number/10; return !(ge==shi); } else if(number<1000){ int ge = number%10; int bai = number/100; return !(ge == bai); } else if(number<10000){ int ge = number%10; int qian = number/1000; int shi = (number%100)/10; int bai = (number/100)%10; return !(ge==qian&shi==bai); } else if(number<100000){ int ge = number%10; int wan = number/10000; int shi = (number%100)/10; int qian = (number/100)%10; return !(ge==wan&shi==qian); } return false; // 暂时估计前100个回文素数在钱10w个数里了。 } public static boolean isSuShu(int number){ //是素数就true for(int i = 2 ;i<=number/2;i++){ if(number%i==0) return false; } return true; }//在这里,先反转,再判断是不是素数,可以借用上面的 isSuShu 方法。bingo.public static boolean isFanZhuanSuShu(int number){ //反转过来也是素数的话,true.if(number<100){ //这里不用考虑1-10了,因为1-9肯定是回文数,前面排除了。10肯定不是素数,上面那个方法也排除了。 int ge = number%10; int shi = number/10; int number1 = ge*10+shi; return isSuShu(number1);}else if (number<1000){ int ge = number%10; int shi = (number%100)/10; int bai = number/100; int number1 = ge*100+shi*10+bai; return isSuShu(number1);}else if(number<10000){int ge = number%10;int shi = (number%100)/10;int bai = (number%1000)/100;int qian = number/1000;int number1 = ge*1000+shi*100+bai*10+qian;return isSuShu(number1);}else if (number<100000){int ge = number%10;int shi = (number%100)/10;int bai = (number%1000)/100;int qian = (number%10000)/1000;int wan = number/10000;int number1 = ge*10000+shi*1000+bai*100+qian*10+wan;return isSuShu(number1); //这里也只是算到99999,也就是说,默认前一百个反素数是在99999前面的,包含它。} return false; }}
反素数java_【Java自学】 反素数相关推荐
- java语言中如何表示素数,使用Java语言求素数的几个方法
使用Java语言求素数的几个方法 今天找了一篇"面试50题"的文档,第一题是求fibonacci数列,使用递归很容易就实现了,没什么难度. 第二题是输出101~200之间的素数,没 ...
- java 反义_[Java教程]反义字符存储总结
[Java教程]反义字符存储总结 0 2017-09-11 10:00:09 前后端交互中,定义接口字段的时候,一般都会借助一些小工具来定义JSON格式的字符串.我在写这样的一个工具的时候碰到一个关于 ...
- Java黑皮书课后题第6章:**6.27(反素数)反素数(反转拼写的素数)是指一个非回文素数,将其反转之后也是一个素数。编写程序,显示前100个反素数,每行显示10个,并且数字间用空格隔开
6.27(反素数)反素数(反转拼写的素数)是指一个非回文素数,将其反转之后也是一个素数.编写程序,显示前100个反素数,每行显示10个,并且数字间用空格隔开 题目 题目描述 破题 代码 题目 题目描述 ...
- idea 项目jar反编译java_带你上手阿里开源的 Java 诊断利器:Arthas
本文适合有 Java 基础知识的人群. 本文作者:HelloGitHub-秦人 HelloGitHub 推出的<讲解开源项目>系列,今天给大家带来一款阿里开源的 Java 诊断利器 Art ...
- java语言 判断素数,C语言实现判断一个数是否为素数并求100以内的所有素数
判断一个数是否为素数 算法思想 设一个正整数x,sqrt(x)为x开平方后的值,若x不为素数,则x=a*b,a,b为2~x-1之间的整数,且当2=< a <= sqrt(x)时,必有sqr ...
- 【Java】阶乘 素数 循环
<Java 2实用教程(第5版)实验指导与习题解答> ISBN 978-7-302-46687-1<Java实用教程(第5版)微课版> ISBN 978-7-302-46425 ...
- java编程基础素数实验报告,JAVA 基础编程练习题1 (输出素数)
JAVA 基础编程练习题1 (输出素数) JAVA 基础编程练习题1 (输出素数) 题目:判断 101-200 之间有多少个素数,并输出所有素数. 程序分析:判断素数的方法:用一个数分别去除 2 到 ...
- Java 截取反斜杠--java使用split拆分特殊字符
orgn link : http://blog.csdn.net/scy411082514/article/details/7987852 Java 截取反斜杠 replaceAll和split (& ...
- java 反编译项目_Java 7 –反编译项目硬币
java 反编译项目 大家好,该是从2012年开始写作的时候了.正如您在其他博客中可能已经看到的那样,有一些更改可以使您使用Java编程时的开发人员生活变得更加轻松:Diamond运算符,Switch ...
最新文章
- 一文看懂中国MEMS传感器产业链
- 技术人员如何参与产品设计讨论:激活那一潭死水
- python- 基础 range方法的使用
- input file 选择文件后自动上传文件
- -seo要掌握的20条网站的准则
- 算法:翻转链表 Reverse Linked List 三种方法实现,迭代解决人类思维,递归解决机器思维 reverse node
- 充值核销卡密恶意并发请求防止重复利用卡密充值成功解决方案
- 号码检测,节省成本利器
- 思维方式-《成功与运气》书中的精髓:成功到底是靠天赋、努力,还是运气?
- 减少USB 1.1 2.0 端口驱动程序延时_肉鸡啄羽、啄肛、啄蛋等现象如何减少,养殖的朋友们值得看一看...
- 财务管理流程图怎么画之你需要了解的流程图绘制技巧
- 做祛痘产品微信是如何引流的?祛斑祛痘产品引流加粉渠道有哪些?
- 白杨SEO:流量红利消失,现在都在各渠道做推广,我们还有必要做官方网站吗?怎么做呢?
- Jquery(一)选择器
- TortoiseSVN-1.6.5.16974(开源文件版本管理软件) 安装图解教程及下载文件
- 【JavaScript】freecodecamp-----Slasher Flick
- 上海滩上,共创行业新价值的大时代要来了
- Leetcode刷题06-位运算
- 用 Python 进行 DeFi 应用的开发——不同的区块链项目是如何解决安全问题的?
- Latex插入参考文献的方法(两种全)