数学黑洞6174

本文探讨了一个数学现象——数学黑洞6174,揭示了如何通过特定步骤,使得任意四位正整数最终达到固定值6174的过程。详细解释了算法逻辑和实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数学黑洞6174
已知:一个任意的四位正整数。将数字重新组合成一个最大的数和最小的数相减,重复这个过程,最多七步,必得6174。即:7641-1467=6174。将永远出不来。
求证:所有四位数数字(全相同的除外),均能得到6174。输出掉进黑洞的步数。
public class NumberBlackHole {
public static void main(String[] args) {
getStep(1345);
}
public static int getStep(Integer num){
int count=0;//计数
while(num!=6174){
num=getNum(num);
count++;
}
System.out.println("共用"+count+"步");
return count;
}
public static int getNum(Integer num){
int[] nums=new int[4];
nums[0]=num/1000;//取出千位数字
nums[1]=num%1000/100;//取出百位数字
nums[2]=num%100/10;//取出十位数字
nums[3]=num%10;//取出个位数字
Arrays.sort(nums);//排序,从小到大;
int a=nums[0]*1000+nums[1]*100+nums[2]*10+nums[3];//min
int b=nums[3]*1000+nums[2]*100+nums[1]*10+nums[0];//max
int c=b-a;
System.out.println(c+"="+b+"-"+a);
return c;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值