6174数字黑洞-Scratch卡普雷卡尔黑洞

6174数字黑洞-51scratch
6174数字黑洞-Scratch卡普雷卡尔黑洞
此内容为付费资源,请付费后查看
9.9
限时特惠
19.9
立即购买
您当前未登录!建议登陆后购买,可保存购买订单
付费资源

我们身边到处都是黑洞。— 霍金

史蒂芬·霍金
史蒂芬·霍金

什么是6174数字黑洞?

无论怎样设值,在规定的处理法则下,最终都将得到固定的一个值,再也跳不出去了,就像宇宙中的黑洞可以将任何物质(包括运行速度最快的光)牢牢吸住,不使它们逃脱一样,而这些设定的自然数就构成了数学黑洞。

在人教版小学数学五年级上册中就介绍了“6174数字黑洞”,它是印度数学就卡普雷卡尔于1949年发现的,所以又称为“卡普雷卡尔黑洞”。6174数字黑洞的规则如下:

取任意一个不完全相同的4位数,将组成该数的4个数字由大到小排列组成一个大的数,又由小到大排列成一个小的数,再用大数减去小数得到一个差值,之后对差值重复前面的交换步骤,最终会掉入数字黑洞6174中。

例如,取整数7086,对其各位数重排后得到大数8760和小数678,8760 – 678 = 8082,对8082进行重排得到的大数和小数分别为8820和288,8820 – 288 = 8532,再次重排得到8532和2358,8532 – 2358 = 6174,继续重排得到7641和1467,7641 – 1467 = 6174,只要得到6174,无论再怎么计算,永远都是6174,掉进了6174这个数字黑洞中。

编程思路

根据前面的描述,我们可以发现,编写程序验证数字黑洞,可以分为如下几个模块:

  • 拆分数字:就是将一个四位整数进行拆分,分别得到个位、十位、百位和千位;
  • 排序模块:将拆分得到的4个数字进行排序;
  • 获取大数:获取排序之后的最大数;
  • 获取小数:获取排序之后的最小数;
  • 6174数字黑洞模块:自制积木,对给定的4位数按照规则进行运算,直到最后得到6174;
  • 入口程序:获取用户输入的数字,调用自制积木,验证6174数字黑洞规则。

程序实现

根据前面的分析,我们分步来编写程序。

1.拆分数字

建立自制积木,将其命名为“拆分数字”,并传入一个参数“整数”,编写代码如下:

“拆分数字”自制积木
“拆分数字”自制积木

2.排序

关于排序算法,可以使用冒泡、插入、选择、希尔和快速排序,可以采取其中的任意一种,这里采取选择排序,建立一个自制积木,命名为“选择排序”,编写代码如下:

“选择排序”自制积木
“选择排序”自制积木

3.获取大数

建立一个自制积木,命名为“获取大数”,编写代码如下:

“获取大数”自制积木
“获取大数”自制积木

4.获取小数

建立一个自制积木,命名为“获取小数”,编写代码如下:

“获取小数”自制积木
“获取小数”自制积木

5.编写6174数字黑洞自制积木

建立自制积木,命名为“6174数字黑洞”,编写代码如下:

“6174数字黑洞”自制积木
“6174数字黑洞”自制积木

6.入口程序

最后,我们来编写入口程序,接收玩家的输入,验证6174数字黑洞规则,代码如下:

入口程序
入口程序

运行效果

Scratch6174数字黑洞程序执行效果如图所示:

Scratch6174数字黑洞运行效果
Scratch6174数字黑洞运行效果

关于Scratch排序算法,可以参考:

© 版权声明
THE END
喜欢就支持一下吧
点赞6赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片