python数字黑洞123_能力橙少儿编程 | 第二十三讲 (数字黑洞6174)

在人教版小学《数学(五年级上册)》中就介绍了“数字黑洞6174”,它是印度数学家卡普雷卡尔于1949年发

现的,又称为“卡普雷卡尔黑洞”。这个数字黑洞在运算过程中需要对个数位重新排列和求取差值,所以也被

称为“重拍求差黑洞”。

卡普雷卡尔黑洞(数字黑洞6174)的规则如下:

取任意一个不完全相同的4位数,将组成该数的4个数字由大到小排列组成一个大的数,又由大到小排列成一个

小的数,再用大树减去小数得到一个差值,之后对差值重复前面的变换步骤,最终会掉入数字黑洞6147之中。

例如:整数8848。对其各位数重排后得到大数8884和小数4888,用大数减去小数得到差值为3996。之后对整数

3996按上述规则继续变换的过程为:9963-3699=6264 6642-2466=4176 7641-1467=6174。经过四次变换,整数

8848就掉进数字黑洞6174之中。

编程思路

根据卡普雷卡尔黑洞的规则,设计验证这个数字黑洞的程序。该程序可分解为以下几个部分。

(1)入口程序。用于接受用户输入的4位整数,并将该数放入数字黑洞。

(2)数字黑洞6174模块。该模块用于按照数字黑洞6174的规则对输入的整数进行运算,直到最后得到6174。

(3)分解数字模块。该模块用于将用户输入的4位整数的各位数字分解后存放到一个“数组”列表中。

(4)取大数模块。该模块用于取得重排后的最大数。

(5)取小数模块。该模块用于取得重排后的最小数。

(6)选择排序模块。该模块使用选择排序算法对“数组”列表中的数字按照从大到小的排列顺序。

程序清单:

入口程序

数字黑洞6174模块

分解数字模块

取大数模块

取小数模块

选择排序模块

单击绿旗运行程序,输入一个整数1688。这个数字经过5次变换后,使整数1688掉入数字黑洞6174底部。

试一试

输入一些4位不完全相同的整数进行验证,看看它们经过多少次变换后会掉入数字黑洞6174的底部。

能力橙版权所有

请勿转载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值