一千万以内的自守数

原创 2017年09月25日 10:16:07
求一千万以下的自守数 如 5*5=25 25*25=625 如果有n由k位数构成 那么n的平方的末尾k位数必须和n相等 并且变量只能用证书
/**
 * 思路:n的平方对整的x次幂取余结果是n,则满足条件
 * 例5*5=25  25%10=5
 * 625*625=390625 625%(10*10*10)=625
 * @author yx
 *
 * 2017-9-25
 */
public class Test {
    public static void main(String[] args) {
        for (int j = 0; j < 10000000; j++) {
            for (int i = 1; i < String.valueOf(j).length(); i++) {
                if (Math.pow(j % (Math.pow(10, i)), 2) == j) {  
                    System.out.println(j + "," + (int) (j % (Math.pow(10, i))));
                    break;
                }
            }
        }
    }
}

  结果:

25,5
36,6
625,25
5776,76
141376,376
390625,625

版权声明:本文为博主原创文章,未经博主允许不得转载。

自守数 寻找出2千万以内的所有自守数。注意,2千万的平方已经超出了整数表达的最大范围,所以该程序使用了一个巧妙的方案。

/* 自守数 如果一个自然数的平方数的尾部仍然为该自然数本身,则称其为自守数。 例如: 5 x 5 = 25 76 x 76 = 5776 625 x 625 = 390625 下面代码的...

自守数问题 V7.0.0.0

  • 2007年08月19日 20:56
  • 42KB
  • 下载

华为初级——自守数

描述:自守数是指一个数的平方的尾数等于该数自身的自然数。例如:25^2=625,76^2=5776,9376^2=87909376.请求出n以内的自守数的个数 接口说明 原型:unsigned i...
  • xmh1954
  • xmh1954
  • 2014年05月20日 14:09
  • 1070

C#求自守数

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T...

自守数C++实现

  • 2016年12月06日 00:55
  • 792B
  • 下载

自守数问题,即n^2的结果的末尾仍然是n

#include"stdio.h" #include"stdlib.h" int main(){ long int i,k,k1,k2,k3,mul;  for(i=0;i  {mul=0;k3=1;...

整数趣题(自守数)

/**************************************** * File Name : integer.c * Creat Data : 2015.1.24 * A...

1035: 自守数问题

题目Description 自守数是指一个数的平方的尾数等于该数自身的自然数。 例如: 25^2=625 76^2=5776 9376^2=87909376 请求出200000以...

自守数算法----C语言实现

#include //自守数算法 //ep : 25 ^ 2 = 625 76 ^ 2 = 5776 9376 ^ 2 = 87909376 /*ep : * 376 被乘数 ...

【C语言训练】自守数问题

题目描述 自守数是指一个数的平方的尾数等于该数自身的自然数。  例如:  25^2=625  76^2=5776  9376^2=87909376  请求出200000以内的自守数? 输入 输...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一千万以内的自守数
举报原因:
原因补充:

(最多只允许输入30个字)