PRELOADER

不念过去 不负现在 不畏将来

当前文章 : 《自守数》

12/4/2018 —— 

题目: 找出1-1000中的自守数。
自守数说明: 一个数的平方的尾数等于该数时,该数字即为自守数。比如:0,1,5,6,25,76

java代码:

package automorphicNumber;
//自守数

import javax.swing.text.html.HTMLDocument.HTMLReader.IsindexAction;

public class automorphicNumber {

    public static void main(String[] args) {
        for(int i=0;i<10000;i++) {
            if (isautomorphicNumber(i)) {
                System.out.println(i+" is a automorphicNumber");
            }               
        }
        //System.out.println(isautomorphicNumber(376));
    }
    //判断一个数是不是自守数
    public static boolean isautomorphicNumber(int i) {
        int a = i*i;
        int b = a%10;
        int c = b;
        int count = 1;
        do {
            count=count*10;            
            if (c==i) {
                return true;              
            }   
            a = a/10;
            b = a%10;
            c = c+b*count;   
        } while (a>=10);
        return false;
    }
}
  • 1、这题,指定了一个数的范围为1-1000,对每一个进行判断,找出其中的自守数。
  • 2、寻找自守数的方法里首先需要指定该数的平方a.此时,从a的个位数开始判断,对个位数乘以1后与原数进行比较,若相同就返回真,不同则继续取十位数字乘以10与个位数想加后再进行比较,若相同就返回真,不同则继续循环取百位。
  • 3、主函数中,对每一个返回true类型的数进行输出,该数字即为自守数。