5位数的数字黑洞是多少_5位黑洞数
任意一个5位数,比如:34256,把它的各位数字打乱,重新排列,可以得到一个最大的数:65432,一个最小的数23456。求这两个数字的差,得:41976,把这个数字再次重复上述过程(如果不足5位,则前边补0)。如此往复,数字会落入某个循环圈(称为数字黑洞)。
比如,刚才的数字会落入:[82962, 75933, 63954, 61974] 这个循环圈。
请编写程序,找到5位数所有可能的循环圈,并输出,每个循环圈占1行。其中5位数全都相同则循环圈为 [0],这个可以不考虑。
循环圈的输出格式仿照:
[82962, 75933, 63954, 61974]
其中数字的先后顺序可以不考虑。
代码如下:
#include
int
n;用于【临时】存储输入的5位数,以及以后计算的最大值和最小值的差值(递归算法)。
int
m[100],flag=0;///m[100]用于存放输入的5位数,以及计算出的最大值和最小值的差值;
///flag用于记录数组m的最后一个不为零的下标(或者说是递归的次数)。
fun()
{
int temp[5];
int i,j,t;
int max=0,min=0;
如果n是四位数则在前面补0
if(n<10000)
temp[0]=0;
temp[0]=n/10000;
temp[1]=n/1000;
temp[2]=n/100;
temp[3]=n/10;
temp[4]=n;
如果五个数字全部相等
if(temp[0]==temp[1] && temp[1]==temp[2]
&&
temp[2]==temp[3] && temp[4]==temp[5])
{
printf("[0]\n");
return;
}
///从大到小进行排序
for(i=0;i<5;i++)
for(j=i+1;j<5;j++)
if(temp[i]
{
t=temp[i];
temp[i]=temp[j];
temp[j]=t;
}
求出最大值
for(i=0;i<5;i++)
max=max*10+temp[i];
求出最小值
for(i=4;i>=0;i--)
min=min*10+temp[i];
求出差值,并且赋值给n,以便进行递归计算
n=max-min;
n的值与数组中的每个元素进行比较
for(i=0;i
if(n==m[i])如果有相等的则从i开始到数组结尾是数字黑洞
{
printf("[");
for(j=i;j
printf("%d,",m[j]);
printf("]\n");
return ;
}
m[flag++]=n;
fun();
}
void
main()
{
scanf("%d",&n);
m[0]=n;
flag++;
fun();
}
5位数的数字黑洞是多少_5位黑洞数相关推荐
- 给定一个N位数,得到一个N-k位的数中最小的数
题目: 给定一个N位数,例如12345,从里面去掉k个数字,得到一个N-k位的数, 例如去掉2,4,得到135,去掉1,5,得到234.设计算法,求出所有得到的 N-k位数里面最小的那一个 ...
- 5位数的数字黑洞是多少_目前对于6174数字黑洞现象是否有合理的解释或证明?...
6174数字黑洞计算的一个c#程序实现(原创) 先上结果: 两位数的数字黑洞(只有一组): 09,81,63,27,45 三位数的数字黑洞(只有一个): 495 四位数的数字黑洞(只有一个): 617 ...
- C#数字黑洞之一(卡普雷卡尔黑洞:重排求差黑洞)
数字黑洞 数字黑洞,又称指的是某种运算,这种运算一般限定从某些整数出发,反复迭代后结果必然落入一个点或若干点的情况叫数字黑洞. 黑洞原是天文学中的概念,表示这样一种天体:它的引力场是如此之强,就连光也 ...
- AMNO.6 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123 输入 一个不大于5位的数字
题目描述 给出一个不多于5位的整数,要求 1.求出它是几位数 2.分别输出每一位数字 3.按逆序输出各位数字,例如原数为321,应输出123 输入 一个不大于5位的数字 输出 三行 第一行 位数 第二 ...
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123。
撰写人--软工二班--陈喜平 题目描述 给出一个不多于5位的整数,要求 1.求出它是几位数 2.分别输出每一位数字 3.按逆序输出各位数字,例如原数为321,应输出123. 将下面的程序填写完整. # ...
- 给一个不多于5位的正整数,要求: 1.求出它是几位数; 2.分别输出每一位数字; 3.按逆序输出各位数字;
对一个数如何得出它是几位数并求出其个位.十位.百位.千位- 给一个不多于5位的正整数,要求: 1.求出它是几位数: 2.分别输出每一位数字: 3.按逆序输出各位数字: 代码如下 #include &l ...
- Excel无法完全显示超过11位数的数字?超简单方法1秒教给你!
在Excel表格中输入超过11位数的数字时,会自动变为科学计数格式,无法全部显示所有数字,但当我们需要在单元格中显示超过11位数的数字,如何快速处理?最全最快的方法教给大家. 一.单引号 在输入长数字 ...
- php随机码生成有数字英文,用php生成一个可选位数的数字和英文随机码
下面是用php生成一个可选位数的数字和英文随机码的相关内容,文章教程主要讲述与位数 数字 英文 随机码 相关的一些技术与知识,获取更多最新教程,下面是教程讲解: 用php生成一个可选位数的数字和英文随 ...
- VBA之正则表达式(14)-- 提取指定位数的数字
实例需求:只提取字符串中2位~4位的数字(无小数点),提取结果为蓝色数字. 测试字符串:6688-部门员工共10人与2019年6月成功完成销售额889966订单数689 这次的话题有些太简单了吧!?任 ...
最新文章
- AI造假 vs AI打假 终结“猫鼠游戏”不能只靠技术
- swoole UDP TCP客户端
- 抢票 | AI未来说学术论坛第八期 深度学习特别专场
- mongo更新数组字段_更新mongodb中嵌套数组中的几个字段(使用pymongo)
- 新闻媒体是怎样使用计算机的,计算机技术在新闻上的应用
- dstwo linux 模拟器,dstwo md模拟器使用图文教程
- 10种优化Mac以获得最佳性能的简便方法
- mir2 client: review
- Synergy:亚马逊云服务(AWS)在亚太地区排名第一
- Echarts官方文档
- 一个简单的格式化信函生成器
- 华安基金高管事发 基金业突遇“公信力寒流”(ZT)
- React 问题总结
- Java中有哪些锁,区别是什么
- 然而沼跃鱼早就看穿了一切
- 网页编程(满屋花、金山打字、打地鼠)——张渣渣_的学习记录(4)
- 大数据导论--大数据安全与数据开放共享
- 用google协作平台6步轻松建立免费个人网站
- 用python画雪花 科赫曲线递归_【TCE的编程小讲堂】【Python】【第三期】如何画出科赫雪花?(下)...
- SSH Keylogger密码抓取
热门文章
- 拿到这份“小抄”,Amazon面试妥了
- 时下的XX币会不会成为AMD的救命稻草?
- VS“无法查找或打开PDB文件” 解决方案
- PHP 的 switch 语法
- 今目标登录时报网络错误E110
- 手把手教你python实现量价形态选股知乎_【手把手教你】Python量化股票市场情绪指标ARBR...
- 让Eclipse变酷点
- ubuntu20.04安装pip2
- 【NXP DN 系列】浅谈 DPAA1 Software Architecture 工作原理
- 使用贝塞尔曲线算法实现毛笔签名效果