趣味整数-自守数-java
2016-04-20 22:19
477 查看
问题描述:
如果某个数的平方的末尾几位数等于这个数,那么就称这个数为自守数。显然,5和6是自守数
5*5=25 6*6=36 25*25=125
求10000以内的自守数
方法1:
方法2:
如果某个数的平方的末尾几位数等于这个数,那么就称这个数为自守数。显然,5和6是自守数
5*5=25 6*6=36 25*25=125
求10000以内的自守数
方法1:
public class Main { public static void getZsNum(int maxNum){ for(int i=5 ; i<=maxNum ; i++){ int n = (i+"").length(); int a = i*i; //计算i的平方 int b = a-i; //计算i的平方减i int c = (int)Math.pow(10, n); //计算10的i的位数次方 if(b%c==0){ //如果i的平方减i 整除10的i的位数次方,那么i就是自守数 System.out.println(i); } } } public static void main(String[]Args){ getZsNum(10000); } }
方法2:
public class Main { public static void getZsNum(int maxNum){ for(int i=5 ; i<=maxNum ; i++){ String s1 = String.valueOf(i); //将i转换为字符串 String s2 = String.valueOf(i*i); //将i的平方转换成字符串 String s3 = s2.substring(s2.length()-s1.length());//s3定义为字符串s2最后的长度为s1字符串的字符串 if(s3.equals(s1)){ //比较i1字符串和i3字符串是否相同 System.out.println(i); } } } public static void main(String[]Args){ getZsNum(10000); } }
相关文章推荐
- Java对web资源的解析
- studyjams大餐之: justjava 第一版
- java基础学习(2)
- java 继承
- 通过Maven找java source源码方法
- 【Java线程】锁机制:synchronized、Lock、Condition
- 搭建SpringMVC+MyBatis开发框架三
- Eclipse和MyEclipse使用技巧--解决MyEclipse中的js报错的小方法
- Java线程:Condition-线程通信更高效的方式
- Java开发和运行环境的搭建
- 十进制数转化成N进制数(java实现)
- java并发-Callable与Future
- java中的线程
- 搭建SpringMVC+MyBatis开发框架二
- java基础知识总结(三)
- java学习笔记(十一)
- 搭建SpringMVC+MyBatis开发框架一
- 趣味整数-勾股数-java
- eclipse debug 多线程
- java--关于非空判断的小技巧