1 简介
数字黑洞6174,也称“卡谱耶卡常数”(Kaprekar)。
任意选一个四位数(数字不能完全相同),把所有的数字从大到小排列,再把所有数字从小到大排列,用前者减去后者,得到一个新的数;重复将新得到的数进行上述操作,7步之内,必然会得到6174。
如:任选四位数:3、6、8、8
8863-3688=5175 (一步)
7551-1557=5994 (二步)
9954-4599=5355 (三步)
5553-3555=1998 (四步)
9981-1899=8082 (五步)
8820-288=8532 (六步)
8532-2358=6174 (七步)

2 Java代码实现

import java.util.Arrays;
import java.util.Scanner;public class KaprekarOne {public static void main(String[] args){Integer kapre=6174;System.out.println("请依次输入任意不相同的4个数: ");int[] intArr=new int[4];for(int i = 0; i < 4; i++){Scanner inputW = new Scanner(System.in);intArr[i]=inputW.nextInt();}System.out.println("*******************************");for (int i=1;i<9;i++){int kap=kaprekar(intArr);if(Integer.valueOf(kap).equals(kapre)){System.out.println("第 "+i+" 步 Kaprekar常数6174出现!");break;}intArr=intToArray(kap);}}//计算数值static int kaprekar(int[] arrayInt) {//计算最小的四位数//数组升序Arrays.sort(arrayInt);String strIntMini="";for (int num : arrayInt) {strIntMini=strIntMini+Integer.toString(num);}int intMini=Integer.parseInt(strIntMini);System.out.println("最小的4位数是: "+intMini);//计算最大的四位数//数组降序int sizeArray=arrayInt.length;int[] newArrayInt=new int[sizeArray];newArrayInt=arrayIntDesc(arrayInt);String strIntMax="";for (int num : newArrayInt) {strIntMax=strIntMax+Integer.toString(num);}int intMax=Integer.parseInt(strIntMax);System.out.println("最大的4位数是: "+intMax);int kap=intMax-intMini;System.out.println("二数相减为:"+intMax+"-"+intMini+"="+kap);System.out.println("*******************************");return kap;}//数组降序static int[] arrayIntDesc(int[] arrayInt){int sizeArray=arrayInt.length;int[] newArrayInt=new int[sizeArray];for (int i = arrayInt.length - 1; i >= 0; i--) {newArrayInt[sizeArray-1-i]=arrayInt[i];}return newArrayInt;}//数字转数组static int[]intToArray(int num){String sNum=Integer.toString(num);int lNum=sNum.length();int[] arrayInt=new int[lNum];for (int i=0;i<lNum;i++){arrayInt[i]=Integer.parseInt(sNum.substring(i,i+1));}return arrayInt;}}

3 运行结果

数字黑洞6174(Kaprekar常数)之java演示相关推荐

  1. 数学黑洞6174java_奇妙的数字黑洞——6174

    原标题:奇妙的数字黑洞--6174 茫茫宇宙之中,存在着一种极其神秘的天体"黑洞".黑洞的密度极大,引力极强,任何物质经过它的附近,都会被它吸进去,再也不能出来,光线也不例外,因此 ...

  2. 数字黑洞C++ 程序设计,数字黑洞6174,你懂了吗

    数字黑洞6174 给定任意的一个四位正整数(数字不全相同),将它的各位数字重新组合成一个最大的数和最小的数相减后得到一个新的数,对这个新的数重复组数.相减的过程,最多七步,必得6174.#includ ...

  3. 1019 数字黑洞 (20 分)java

    给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有" ...

  4. PTA - 黑洞数(陷阱数、数字黑洞、Kaprekar问题)

    黑洞数也称为陷阱数,又称"Kaprekar问题",是一类具有奇特转换特性的数. 任何一个各位数字不全相同的三位数,经有限次"重排求差"操作,总会得到495.最后 ...

  5. 数字黑洞6174原理c语言,一个数学黑洞——6174

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /*问题描述:从0-9中任意选取4个不完全相同的数 比如,不能是5 5 5 5,可以是1 2 2 2 用这4个数排列出最大的数,2221,最小的数1222 ...

  6. 数字黑洞水仙花数6174卡普耶卡变换,卡布列卡常数归敛

    今天在头条上刷到一篇文章,挺有趣,不想点连接的话我直接把文章考过来了,不知道算不算侵权 头条文章链接 全文: 解析神秘数学黑洞"6174" 或许你早就听过这个故事:有一个神秘的数学 ...

  7. Java 算法数字黑洞

    这里写目录标题 题目描述 解题思路 代码 题目描述 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个 ...

  8. PAT 乙级 1019. 数字黑洞 (20) Java版

    给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有"数字黑洞&qu ...

  9. java蓝桥杯数字黑洞_【蓝桥杯】数字黑洞(5位黑洞数)

    任意一个5位数,比如:34256,把它的各位数字打乱,重新排列,可以得到一个最大的数:65432,一个最小的数23456. 求这两个数字的差,得:41976,把这个数字再次重复上述过程(如果不足5位, ...

最新文章

  1. Sqlserver__数据表排序记录和界面显示排序记录不一致的问题
  2. CSS之使用display:inline-block布局
  3. RabbitMQ(三) HelloWorld 单生产者单消费者示例实现
  4. python中type为什么有main_python中 __name__及__main()__的妙处
  5. ct上的img表示什么_明明胸部CT上已经写了肺癌,为什么还要做那么多花钱又痛苦的检查...
  6. php 实现一致性哈希,PHP一致性哈希实现。。
  7. 【资源】吴恩达新书《Machine Learning Yearning》,附中文版PDF下载
  8. php array函数 array_search 搜索键值, 返回键名
  9. [转载]c# winform 获取当前程序运行根目录
  10. IO流(1)--文件流及其原理
  11. iOS:练习题中如何用技术去实现一个连线题
  12. Unity Shader - ShaderLab: Pass Tags Pass的Tags标签
  13. bat脚本变量赋值输出时提示”ECHO 处于关闭状态“
  14. Oracle后台进程及其作用简介
  15. vue3之组件通信 (props父传子,子传孙)(ts定义数组类型)
  16. java 利用飞信,Java利用飞信API给自己或者好友发信息
  17. C++学习 十五、类继承(1)基类,派生类,访问权限,protected
  18. 解决bootstrap中glyphicon无法显示图标只显示方框的问题
  19. 1.Java内存区域与Java对象
  20. TB6600+stm32F407步进电机驱动测试

热门文章

  1. vim插件自动补齐_(转)Vim自动补全神器:YouCompleteMe
  2. 载二氢丹参酮Ⅰ白蛋白纳米粒/去甲斑蝥素白蛋白纳米粒/伏立康唑白蛋白纳米粒的制备研究
  3. IBM告别罗睿兰时代,任命新任CEO和总裁
  4. #老杨说运维# 装了不少监控工具,比如Zabbix,告警信息和监控指标集中管理了吗?
  5. 情人节献礼:来自码农的12个爱情添加剂
  6. 互联网打响云上争夺战:从计算到生态
  7. Delphi 7-XE系列升级安装Indy10.6
  8. Java接口限速器--->注解与反射,枚举,AOP拦截器,异常处理中心,Redis实战
  9. Java 1060 爱丁顿数
  10. 如何用APPS赚钱?