Java\Scala\Python三种语言求解经典编程实例(四)—— 求10000以内的自守数
来源:互联网 发布:蜂窝数据漫游是什么 编辑:程序博客网 时间:2024/06/06 09:22
相关文章推荐:
Java\Scala\Python三种语言求解经典编程实例(一)——求水仙花数
Java\Scala\Python三种语言求解经典编程实例(二)—— 尾数前移
Java\Scala\Python三种语言求解经典编程实例(三)—— 不重复的3位数
配置参数文章:
快速配置Linux下的编程环境变量
安装Python交互式数据处理工具——IPython
Linux下创建并执行python脚本
Java\Scala\Python三种语言求解经典编程实例(四)—— 求10000以内的自守数
如果某个数的平方的末尾几位等于这个数,那么就称这个数为自守数。显然,5和6是一位自守数(5*5=25,6*6=36)。 25*25=625,76*76=5776,所以25和76是两位自守数。
求10000以内的自守数。
1、Java求解
import java.util.*;public class AutomorpheNum{ public static void main(String[] args){ for(int i = 1 ; i <= 10000 ; i++){ int len = (i+"").length(); int t = i * i % ((int)Math.pow(10,len)); if(t == i) System.out.println(i); } }}
2、scala求解,有效代码只有一行!
object AutomorpheNum extends App{ for(n <- 1 to 10000 if n*n % (math.pow(10,n.toString.length)) == n ) println(n)}
3、python求解,有效代码只有一行!
#!/usr/bin/env python#coding:utf-8# 如果某个数的平方的末尾几位等于这个数,那么就称这个数为自守数。显然,5和6是一位自守数(5*5=25,6*6=36)。 25*25=625,76*76=5776,所以25和76是两位自守数。# 求10000以内的自守数。print [n for n in range(1,10000) if n * n % (10 ** len(str(n))) == n]
最后结果:
1
5
6
25
76
376
625
9376
1 0
- Java\Scala\Python三种语言求解经典编程实例(四)—— 求10000以内的自守数
- Java\Scala\Python三种语言求解经典编程实例(一)——求水仙花数
- Java\Scala\Python三种语言求解经典编程实例(三)—— 不重复的3位数
- Java\Scala\Python三种语言求解经典编程实例(二)—— 尾数前移
- 求20000以内的自守数
- 一千万以内的自守数
- 10亿以内的自守数
- 亲和数问题--求解500万以内的亲和数之—Scheme语言实现
- (三)求1000以内的完数
- 80x86汇编语言编程:求 10000 以内的《完数》
- java经典算法(一)求100以内的素数
- java求1000以内的水仙花数
- java 求100000以内的相亲数
- C语言经典算法(一)——求最大公约数的四种方法
- C++实例 同构数 求1000以内的同构数
- C#求自守数
- C语言实验题——自守数
- 关于 自守数 的C语言算法
- DatePicker / NumberPicker
- eclipse注释格式
- 【09.03.24】在Ubuntu中和Android中添加开机自启动的守护进程
- 九度Online Judge:题目1000:计算a+b
- 解密-神秘的RunLoop
- Java\Scala\Python三种语言求解经典编程实例(四)—— 求10000以内的自守数
- Contains Duplicate II
- 装箱和拆箱
- Leetcode_c++:Construct Binary Tree from Preorder and Inorder Traversal(105)
- 欢迎使用CSDN-markdown编辑器
- leetcode 111 Minimum Depth of Binary Tree
- KMP算法详解
- CentOS 6.4+nginx+php+mysql详细设置步骤
- 顶层const 与底层const