Java\Scala\Python三种语言求解经典编程实例(二)—— 尾数前移
2016-05-28 16:42
721 查看
相关文章推荐:
Java\Scala\Python三种语言求解经典编程实例(一)——求水仙花数
三种语言求解经典编程实例,全部是在Linux下编码实现的。
配置参数文章: 快速配置Linux下的编程环境变量
Linux下运行Python的文章:
安装Python交互式数据处理工具——IPython
Linux下创建并执行python脚本
尾数前移问题:求一个自然数N,个位数是6,将6提到最前面所得数是N的4倍。
解题思路:
1.令末位数t = 6, 除末位以外部分n
2.t连续×10移动到最高位, 再加上n
3.t + n == 10 * n + 6 ?
1236 => 6123 == 4 * 1236
1、Java语言实现
2、scala语言实现
3、Python语言实现
最终结果三种语言执行都是一致的:153846 (615384 = 153846 *4 )
Java\Scala\Python三种语言求解经典编程实例(一)——求水仙花数
三种语言求解经典编程实例,全部是在Linux下编码实现的。
配置参数文章: 快速配置Linux下的编程环境变量
Linux下运行Python的文章:
安装Python交互式数据处理工具——IPython
Linux下创建并执行python脚本
尾数前移问题:求一个自然数N,个位数是6,将6提到最前面所得数是N的4倍。
解题思路:
1.令末位数t = 6, 除末位以外部分n
2.t连续×10移动到最高位, 再加上n
3.t + n == 10 * n + 6 ?
1236 => 6123 == 4 * 1236
1、Java语言实现
public class NumTest{ public static void main(String[] args){ for(int i=1; i<=30000;i++){ fun(i); } } public static void fun(int n){ int nn = n; int t = 6; while(nn > 0){ // t连续×10移动到最高位, 再加上n t *= 10; nn /= 10; } int m = 10 * n + 6; if (t + n == m * 4){ System.out.println(m); } } }
2、scala语言实现
object NumTest extends App{ def fun(n:Int){ var nn = n var t = 6 while(nn>0){ //核心算法实现与java一致 t *= 10 nn /= 10 } var m = 10 * n + 6 if ( t + n == m * 4) println(m) } for (x <- 1 to 30000) fun(x) }
3、Python语言实现
def fun(n): nn = n t = 6 while nn > 0: t *= 10 nn /= 10 m = 10 * n + 6 if t + n == m * 4: # 尾数前移后比较原数*6,相等则为结果 print m for x in range(1,30000): fun(x)
最终结果三种语言执行都是一致的:153846 (615384 = 153846 *4 )
相关文章推荐
- python学习笔记 1 数学运算
- Python3 爬虫(一)-- 简单网页抓取
- leetcode 22. Generate Parentheses-回溯|递归
- [python]除法
- Java\Scala\Python三种语言求解经典编程实例(一)——求水仙花数
- 好消息! 不用再羡慕Python有jupyter 我R也有Notebook了【附演示视频】
- leetcode 103. Binary Tree Zigzag Level Order Traversal-深度遍历|广度遍历|递归|非递归
- python中的OS模块
- Python之scrapy安装
- python中在list中添加字典遇到的问题
- Scrapy学习
- python-布尔值
- 运行python代码报错UnicodeDecodeError: 'ascii' codec can't decode byte 0xe7 in position 91: ordinal not in range(128)的解决办法
- 安装Python交互式数据处理工具——IPython
- Python-Week2-Homework
- 使用Python 进行socket编程
- python制作简单的爬虫
- Python正则表达式指南
- Python的几个高级语法概念浅析(lambda表达式闭包装饰器)
- 11.python中的元祖