1:6174数学黑洞现象

,即常数。

任选4个不完全相同的数字(,如1111就不行),让减(例如8753-3578),不断重复这个动作,最后一定会得到相同的结果:。

神奇的是:这个“最大减最小”的动作,最多!

2:现象复现

我们先来看看五组实验结果:

请输入一个互不相同的四位数:3758

输入的四位数是:3758

第1次:8753 - 3578 = 5175

第2次:7551 - 1557 = 5994

第3次:9954 - 4599 = 5355

第4次:5553 - 3555 = 1998

第5次:9981 - 1899 = 8082

第6次:8820 - 288 = 8532

第7次:8532 - 2358 = 6174

经过了7次最大减最小的动作

请输入一个互不相同的四位数:2517

输入的四位数是:2517

第1次:7521 - 1257 = 6264

第2次:6642 - 2466 = 4176

第3次:7641 - 1467 = 6174

经过了3次最大减最小的动作

请输入一个互不相同的四位数:6915

输入的四位数是:6915

第1次:9651 - 1569 = 8082

第2次:8820 - 288 = 8532

第3次:8532 - 2358 = 6174

经过了3次最大减最小的动作

请输入一个互不相同的四位数:9073

输入的四位数是:9073

第1次:9730 - 379 = 9351

第2次:9531 - 1359 = 8172

第3次:8721 - 1278 = 7443

第4次:7443 - 3447 = 3996

第5次:9963 - 3699 = 6264

第6次:6642 - 2466 = 4176

第7次:7641 - 1467 = 6174

经过了7次最大减最小的动作

请输入一个互不相同的四位数:5287

输入的四位数是:5287

第1次:8752 - 2578 = 6174

经过了1次最大减最小的动作

3:C语言代码的实现

接下来,我们用C语言代码进行验证,代码实现如下:

//代码实现

#include

int convert(int number[],int ans);

int *sort(int number[],int len);

int main(void)

{

int number[4] = {};

int *p = NULL;

int n = ;

int ans = ;

int count = ;

printf("请输入一个互不相同的四位数:");

scanf("%d",&n);

printf("输入的四位数是:%d\n",n);

ans = n;

while(ans!=6174)

{

ans = convert(number,ans);

printf("第%d次:%d\n",count+1,ans);

++count;

}

printf("经过了%d次最大减最小的动作\n",count);

return ;

}

int *sort(int number[],int len) //大到小的排序

{

int a =;

for(int i=; i

{

for(int j=i+1;j

{

if(number[i]

{

a = number[i];

number[i] = number[j];

number[j] = a;

}

}

}

return number;

}

int convert(int number[],int ans)//每次变换得到的数字

{

int *p = NULL;

int m=;

number[] = ans/1000; //把这个数放入数组

number[1] = ans%1000/100;

number[2] = ans%100/10;

number[3] = ans%10;

p = sort(number,4);

m=(*p*1000+*(p+1)*100+*(p+2)*10+*(p+3))- ( *(p+3)*1000+*(p+2)*100+*(p+1)*10+*p);//最大数字减去最小数字

return m;

}

运行结果:

6174C语言编程,C语言代码实现:6174数学黑洞(卡普雷卡尔常数)相关推荐

  1. matlab常数编程,Matlab编程,求解出卡普雷卡尔(Kaprekar)常数

    用matlab编程,计算出卡普雷卡尔(Kaprekar)常数 取任意一个4位数(4个数字均为同一个数的除外),将该数的4个数字重新组合,形成可能的最大数和可能的最小数,再将两者之间的差求出来:对此差值 ...

  2. 11 12 13c语言编程,C语言编程

    C语言编程 1.sscanf() sscanf()与scanf()类似,都是用于输入的,只是后者以键盘(stdin)为输入源,前者以固定字符串为输入源. 头文件:#include 格式:int ssc ...

  3. [Lua语言编程]Lua语言基础知识

    文章目录 `Lua` `Lua`语言的起源 `Lua` 特性 `Lua下载` Linux 系统上安装 Mac OS X 系统上安装 Window 系统上安装 `Lua` `Lua`语言语法 `Lua` ...

  4. 0.618法C语言编程,c语言编程题--0.618法求最小值

    c语言编程题--0.618法求最小值0 题目: 1.函数f(x)=x+10/x,初始量a=2,b=10,c=0.3 2.步骤:(1)取a1=a+0.382*(b-a),b1=b+0.618*(b-a) ...

  5. 100以内加减法C语言编程,C语言编程100题(其三)来啦!

    原标题:C语言编程100题(其三)来啦! 无论是风里,还是在雨里,我都在这里守候着你- 大家好啊,我是小C,咱们又见面咯,前面的题目做的怎么样呢,今天又给大家送上新的题目了,快来学习吧! 计算200到 ...

  6. 在线模拟c语言编程,c语言模拟编程学习软件v2019

    C/C ++程序设计学习与实验系统是一款可用于设计教学演示.学习与实验的C/C ++语言编程学习软件,是由从事教学的老师根据C/C ++的初学者及C程序多媒体演示研发.对于想要学习C语言的朋友是一个不 ...

  7. 6174C语言编程,C语言验证6174数学问题

    有意思的数学问题 任意4位不完全一样的数字,能组合出的最大数字减去能组合出的最小数字,得到一个新的数字(3位数补0),重复以上操作,不超过7个循环,必然得到一个数:6174 这个问题是之前发布的文章, ...

  8. 数制转换c语言编程,C语言数据结构中数制转换实例代码

    C语言数据结构中数制转换实例代码 数制转换是严蔚敏的数据结构那本书中的例子,但是那本书中的例子大都是用伪代码的形式写的,不是很容易理解和实现,对初学者造成了不小的困扰,在这里我们将其详尽的实现出来,以 ...

  9. 谁的饭量大 c语言编程,c语言第一章第一节 认识变量(示例代码)

    声明:本人大一新生,闲着无聊..写写c语言教程..菜鸟一枚..大神勿喷!!! 接下来我们都用dev来进行编译..vc++太古老了,没提示功能,不好上手,并且老是出毛病..vs太大了,编个c不至于,运行 ...

最新文章

  1. cdt仿真程序,可模拟RTU使用CDT92协议和主站端通讯
  2. 分布式端口扫描利刃: 使用DNmap创建Nmap集群
  3. 【特征工程】特征分箱
  4. Vim-复制选中内容至系统剪贴板,光标移动到指定行的行首和行尾
  5. 屏的像素与传输速率_柔性半导体新突破:传输速度已足够驱动OLED像素
  6. 虚拟机vmware11装Mac ox 10.8 解决windows8.1下unlocker202 vmxsmc.exe已停止工作的问题
  7. Java 设计模式之工厂模式(二)
  8. JavaWeb无限级分销结构分析
  9. js 匿名函数_编写高质量箭头函数的5个最佳做法
  10. Fabric chaincode开发调试
  11. NUC1840 Graveyard Design【尺取法】
  12. jquery api的整体解读
  13. 75道逻辑思维题及答案--计算机面试大全
  14. 【MySQL】011-多表查询
  15. 学习笔记1——制作数据集
  16. 计算机软件水平辅导,计算机软件水平辅导:软件的社交能力
  17. aect17定义_AECT-05定义与94定义的区别?
  18. CurveLane-NAS: Unifying Lane-Sensitive Architecture Search and Adaptive Poin
  19. 1112_Vue+SpringBoot+Mybatis的简单员工管理项目
  20. Docker快速入门总结笔记

热门文章

  1. 一个简单的点对点文件传输程序
  2. 设计一个猜拳游戏,完成人机猜拳互动游戏的开发。
  3. Centos7 安装Chrome浏览器
  4. Jetson Nano 硬件相关
  5. Smalltalk for Everyone Else
  6. java.beans 包_JavaBeans的介绍与使用
  7. JavaBeans分类
  8. oracle 查询指定时间范围
  9. Fatal error: Port 9100 is already in use by another process.
  10. STM32实现低功耗待机总结(电流低至5.7uA)