如果我写的博文《数学黑洞(一)令人拍案叫绝的卡布列克常数》惊艳到您了,那西西弗斯黑洞也同样不会让您感到失望。西西弗斯黑洞又叫123黑洞,很明显,这个要出现的不可思议的现象要与再简单不过的数字123扯上了,与6174黑洞还要限制数字位数相比,123黑洞可适用于适合正整数!那么下面我们就看一下关于这个黑洞的描述:
设定一个任意数字串,数出这个数中的偶数个数,奇数个数,及这个数中所包含的所有位数的总数,
例如:1234567890,
偶:数出该数数字中的偶数个数,在本例中为2,4,6,8,0,总共有 5 个。
奇:数出该数数字中的奇数个数,在本例中为1,3,5,7,9,总共有 5 个。
总:数出该数数字的总个数,本例中为 10 个。
新数:将答案按 “偶-奇-总” 的位序,排出得到新数为:5510。
重复:将新数5510按以上算法重复运算,可得到新数:134。
重复:将新数134按以上算法重复运算,可得到新数:123。
结论:对数1234567890,按上述算法,最后必得出123的结果,换言之,任何数的最终结果都无法逃逸123黑洞。
下面我们还是用程序验证这一结论。
代码清单:
import java.util.Random;
public class HeiDong123 {
static final int N = 100;
static int count = 0;
public static void main(String[] args) {
Random r = new Random();
/*随机产生N个随机数进行测试*/
for(int i = 0; i < N; i++)
go(r.nextInt(r.nextInt(1000000)+1));
/*判断N个随机数结果是否产生N个123*/
System.out.println(count == N);
}
private static void go(int a) {
int oushu = 0;
int jishu = 0;
int sum = 0;
while(a > 0){
if((a & 1) == 0)
oushu++;
else
jishu++;
a /= 10;
}
sum = oushu + jishu;
int temp = sum;
int n = 1;
while(temp > 0){
n *= 10;
temp /= 10;
}
int m = n;
temp = jishu;
if(temp == 0)
jishu = 10;
while(temp > 0){
m *= 10;
temp /= 10;
}
sum = oushu * m + jishu * n + sum;
if(sum == 123){
count++;
return;
}
go(sum);
}
}
此问题已在2010年由我国的唯美主义和自然主义男士秋屏证明。
以下内容转载至秋屏的新浪博客上的证明原文:
http://blog.sina.com.cn/s/blog_4d2e0dd80100ih0x.html
“西西弗斯串(数学黑洞)”现象与其证明
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>□<wbr><wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; line-height:30px; font-size:20px">秋
屏</span></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr>由若干个阿拉伯数字从左至右排列而成的一串数字符号,叫做数字串。如:“0”,“12”,“235”,“333”,“1403765”,“00587465132098”等等,就分别是一个数字串。显然任意一数字串中均含有若干个由一个阿拉伯数字构成的奇数或偶数。</wbr>
“数学黑洞”现象:取任意一数字串,(1)先数一下其中所含由一个阿拉伯数字构成的偶数个数,比如个数是“m”,就记作“m”。(2)再数一下其中所含由一个阿拉伯数字构成的奇数个数,比如个数是“n”,就在“m”后面记作“n”——得出“mn”。(3)最后算一下其中所含阿拉伯数字的总个数,即把“m”加 “n”的和算出,比如和是“l”,就在“mn”后面记作“l”——得出“mnl”。经过以上三个步骤的程序操作,就将原数字串转变成了“mnl”这个数字串。此时会发现:也许按本程序操作一次,所转变成的数字串就是数字串“123”;否则,将转变成的数字串继续按本程序操作,这样反复操作下去最终总可将原数字串转变成数字串“123”。而且一旦将原数字串转变成数字串“123”后,无论再对“123”按本程序操作多少次,所转变成的数字串总还是“123”,而不会是其他形式的数字串。这就是说对任意一数字串按本程序反复操作下去,最终所转变的数字串总是“123”。因此对于这个程序以及“数字宇宙(即无限个数字串)”来说,数字串“123”就是一个永远无法逃逸的“数学黑洞”。数字串“123”也称作西西弗斯串。西西弗斯的故事出自希腊神话,天神罚科林斯国王西西弗斯将一块巨石推到一座陡峭的山顶上,但无论他怎样努力,这块巨石总是在到达山顶时却又不可避免地滚下来,于是他只得重新再推,永无休止。之所以把数字串“123”称作西西弗斯串,意思是说对于任意一数字串按本程序反复操作下去,所得的结果都是“123”,而且一旦转变成“123”后,无论再按本程序操作多少次,每次所转变的结果都会永无休止地重复着“123”。
例如:对数字串“235”按本程序反复操作。先数下其中所含由一个阿拉伯数字构成的偶数个数,个数为“1”,就记作“1”。再数下其中所含由一个阿拉伯数字构成的奇数个数,个数为“2”,就在“1”后面记作“2”——得出“12”。最后算一下其中所含阿拉伯数字的总个数,即把“1”和“2”的和算出,和是“3”,就在“12”后面记作“3”——得出“123”。这样原数字串就转变成了“123”。而后对“123”继续按本程序操作任意次,结果还是转变成“123”。
例如:对数字串“0”按本程序反复操作。先数下其中所含由一个阿拉伯数字构成的偶数个数,个数为“1”,就记作“1”。再数下其中所含由一个阿拉伯数字构成的奇数个数,个数为“0”,就在“1”后面记作“0”——得出“10”。最后算一下其中所含阿拉伯数字的总个数,即把“1”和“0”的和算出,和是“1”,就在“10”后面记作“1”——得出“101”。这样就把原数字串转变成了“101”。继续对“101”按本程序操作,先数下其中所含由一个阿拉伯数字构成的偶数个数,个数为“1”,就记作“1”。再数下其中所含由一个阿拉伯数字构成的奇数个数,个数为“2”,就在“1”后面记作“2”——得出“12”。最后算一下其中所含阿拉伯数字的总个数,即把“1”和“2”的和算出,和是“3”,就在“12”后面记作“3”——得出“123”。这样“101”就转变成了“123”。而后对“123”继续按本程序操作任意次,结果还是转变成“123”。
例如:对数字串“333”按本程序反复操作。先数下其中所含由一个阿拉伯数字构成的偶数个数,个数为“0”,就记作“0”。再数下其中所含由一个阿拉伯数字构成的奇数个数,个数为“3”,就在“0”后面记作“3”——得出“03”。最后算一下其中所含阿拉伯数字的总个数,即把“0”和“3”的和算出,和是“3”,就在“03”后面记作“3”——得出“033”。这样就把原数字串转变成了“033”。继续对“033”按本程序操作,就可将其转变成“123”。而后对“123”继续按本程序操作任意次,结果还是转变成“123”。
例如:对数字串“005874626820987688899445<wbr>321068215</wbr>”按本程序反复操作。先数下其中所含由一个阿拉伯数字构成的偶数个数,个数为“22”,就记作“22”。再数下其中所含由一个阿拉伯数字构成的奇数个数,个数为“11”,就在“22”后面记作“11”——得出“2211”。最后算一下其中所含阿拉伯数字的总个数,即把“22”和“11”的和算出,和是“33”,就在“2211”后面记作“33”——得出“221133”。这样就把原数字串转变成了“221133”。继续对“221133”按本程序操作,就可将其转变成“246”。继续对“246”按本程序操作,就可将其转变成“303”。继续对“303”按本程序操作,就可将其转变成“123”。而后对“123”继续按本程序操作任意次,结果还是转变成“123”。
如果将本程序的三个步骤作出相应改变,比如先数下数字串中所含由一个阿拉伯数字构成的奇数个数,记下。再数下数字串中所含由一个阿拉伯数字构成的偶数个数,记下。最后算一下数字串中所含阿拉伯数字的总个数,记下。这样就能形成“数学黑洞”——“213”;比如先数下数字串中所含阿拉伯数字的总个数,记下。再数下数字串中所含由一个阿拉伯数字构成的偶数个数,记下。最后算一下数字串中所含由一个阿拉伯数字构成的奇数个数,记下。这样就能形成“数学黑洞”——“312”;比如先数下数字串中所含阿拉伯数字的总个数,记下。再数下数字串中所含由一个阿拉伯数字构成的奇数个数,记下。最后算一下数字串中所含由一个阿拉伯数字构成的偶数个数,记下。这样就能形成“数学黑洞”——“321”;比如先数下数字串中所含由一个阿拉伯数字构成的偶数个数,记下。再数下数字串中所含阿拉伯数字的总个数,记下。最后算一下数字串中所含由一个阿拉伯数字构成的奇数个数,记下。这样就能形成“数学黑洞”——“132”;比如先数下数字串中所含由一个阿拉伯数字构成的奇数个数,记下。再数下数字串中所含阿拉伯数字的总个数,记下。最后算一下数字串中所含由一个阿拉伯数字构成的偶数个数,记下。这样就能形成“数学黑洞”——“231”。
为什么会形成这样的“数学黑洞”现象呢?下面就作出数学证明。
“西西弗斯串(数学黑洞)”——“123”的证明过程
在证明之前,首先探讨下自然数和阿拉伯数字个数之间的关系。
规律一:一个大于“0”且含有“k(k为大于‘0’的自然数)”个阿拉伯数字的自然数N,其取值范围为:10k-1≦N≦10k-1。(此规律证明过程略)
如:1≦N≦9;10≦N≦99;100≦N≦999;1000≦N≦9999;10000≦N≦99999……
规律二:一个含有“k(k为大于‘0’的自然数)”个阿拉伯数字的自然数可表示为两个自然数之和,那么这后两个自然数中所含阿拉伯数字的个数,均不能超过“k”,却可能同时为“k”。因此,(一)当k=1时,这三个具有加法运算关系的自然数中所含阿拉伯数字的个数之和,只能有唯一的值,其值是:3k。(二)当k﹥1时,这三个具有加法运算关系的自然数中所含阿拉伯数字的个数之和,会有若干个值,而每个值均大于“3”,并且可能存在的最大值是:3k。(此规律证明过程略)
如:“0,1,2,9……”这些自然数中含有“1”个阿拉伯数字,并且它们均可表示为两个自然数之和,而在“0=0+0;1=1+0;2=1+1,2=2+0;9=4+5,9=9+0……”中,三个具有加法运算关系的自然数中所含阿拉伯数字的个数之和,只能有唯一的值,其值是:3k=3×1=3。
如:“1000,3333,9856,9999……”这些自然数中含有“4”个阿拉伯数字,并且它们均可表示为两个自然数之和,而在“1000=998+2,1000=990+10,1000=600+400,1000=1000+0;3333=3330+3,3333=3300+33,3333=2833+500,3333=3333+0,3333=1000+2333;9856=9855+1,9856=9800+56,9856=9000+856,9856=9856+0,9856=8132+1724;9999=9997+2,9999=9900+99,9999=9000+999,9999=9999+0,9999=1000+8999……”中,三个具有加法运算关系的自然数中所含阿拉伯数字的个数之和,有3或4个值,而每个值均大于“3”,并且可能存在的最大值是:3k=3×4=12。
下面便是“西西弗斯串(数学黑洞)”——“123”的证明步骤。
1.对所含阿拉伯数字的总个数不大于“3”的数字串,按本程序操作一次,则可将其转变成数字串“abc(a,b,c分别为自然数;a系前一个数字串中所含由一个阿拉伯数字构成的偶数个数;b系前一个数字串中所含由一个阿拉伯数字构成的奇数个数;c系前一个数字串中所含阿拉伯数字的总个数,且c=a+b≦3)”的形式。因其中c≦3,故可知c中所含阿拉伯数字的个数k=1。根据规律二中(一)的描述可知,c,a,b中所含阿拉伯数字的个数之和是:3k=3×1=3,即“abc”
中所含阿拉伯数字的总个数为“3”。
2.对所含阿拉伯数字的总个数不小于“4”的数字串,按本程序操作一次,则可将其转变成数字串“abc(a,b,c分别为自然数;a系前一个数字串中所含由一个阿拉伯数字构成的偶数个数;b系前一个数字串中所含由一个阿拉伯数字构成的奇数个数;c系前一个数字串中所含阿拉伯数字的总个数,且c=a+b≧4)”的形式。因其中c≧4,故可知c中所含阿拉伯数字的个数k≧1(k系自然数)。
1)当k=1时,①根据规律一的描述可知,c的取值范围为:10k-1≦c≦10k-1,即1≦c≦9。又因为此时c≧4,而4﹥1,所以c的真正取值范围是:4≦c≦9。因为c的真正最小值为“4”,故前一个数字串中所含阿拉伯数字的总个数至少为“4”。②根据规律二中(一)的描述可知,c,a,b中所含阿拉伯数字的个数之和是:3k=3×1=3,即“abc”
中所含阿拉伯数字的总个数为“3”。显然“abc” 中所含阿拉伯数字的总个数,要比前一个数字串中所含的有所减少。
2)当k﹥1时,①根据规律一的描述可知,c的取值范围为:10k-1≦c≦10k-1。虽然此时c≧4,而10k-1﹥4(此不等式的证明过程略),所以c的真正取值范围还是:10k-1≦c≦10k-1。因为c的真正最小值为“10k-1”,故前一个数字串中所含阿拉伯数字的总个数至少为“10k-1”。②根据规律二中(二)的描述可知,c,a,b中所含阿拉伯数字的个数之和大于“3”,并且可能存在的最大值是:3k,即“abc”
中所含阿拉伯数字的总个数大于“3”,并且最多不会超过“3k”。因为此时10k-1﹥3k(此不等式的证明过程略),所以“abc” 中所含阿拉伯数字的总个数大于“3”,并且要比前一个数字串中所含的有所减少。
因为1)中“abc”
中所含阿拉伯数字的总个数等于“3”,而2)中“abc”
中所含阿拉伯数字的总个数大于“3”,所以此时合并而论,“abc”
中所含阿拉伯数字的总个数即不小于“3”。再由1)和2)的结论可知,只要对所含阿拉伯数字的总个数不小于“4”的数字串,按本程序操作一次,所转变成的数字串中所含阿拉伯数字的总个数不小于“3”,并且和前一个数字串中所含的相比就会减少。若所转变成的数字串中所含阿拉伯数字的总个数还不小于“4”,继续对此数字串按本程序操作,同理,再次转变成的数字串中所含阿拉伯数字的总个数不小于“3”,并且和前一个数字串中所含的相比还会减少……如此减少下去,这种减少趋势直到减少到所含阿拉伯数字的总个数是“3”时为止。
3.通过对1.和2.的结论的分析,不难想象还会进一步推导出这样的综合结论——任意一数字串“Q”,无论其中所含阿拉伯数字的总个数是多少,若按本程序操作若干次后,总可将其转变成所含阿拉伯数字的总个数为“3”的数字串“mnl(m,n,l分别为自然数;m系前一个数字串中所含由一个阿拉伯数字构成的偶数个数;n系前一个数字串中所含由一个阿拉伯数字构成的奇数个数;l系前一个数字串中所含阿拉伯数字的总个数,且l=m+n)”。
<wbr><wbr><wbr>继续对“mnl” 按本程序操作一次后,则可将其转变成数字串“pqr(p,q,r分别为自然数;p系前一个数字串中所含由一个阿拉伯数字构成的偶数个数;q系前一个数字串中所含由一个阿拉伯数字构成的奇数个数;r系前一个数字串中所含阿拉伯数字的总个数,且r=p+q)”。因为“mnl” 中所含阿拉伯数字的总个数是“3”,故“pqr”中的“r”
就等于“3”,由此可知“pqr”即是“pq3”这个数字串,且其中所含阿拉伯数字的总个数是“3”,同时3=p+q。同理,继续对“pq3” 按本程序操作一次后,则可将其转变成数字串“xy3(x,y分别为自然数;x系前一个数字串中所含由一个阿拉伯数字构成的偶数个数;y系前一个数字串中所含由一个阿拉伯数字构成的奇数个数;3系前一个数字串中所含阿拉伯数字的总个数,且3=x+y)”。在“pq3”中,因为3=p+q,且“3”系奇数,故可知“p”和“q”这两个自然数一个必是奇数,一个必是偶数,即“pq3”中所含阿拉伯数字的总个数是“3”,由一个阿拉伯数字构成的偶数个数是“1”,由一个阿拉伯数字构成的奇数个数是“2”。因而“xy3”中的“x”就等于“1”,“y”就等于“2”,由此可知“xy3”即是数字串“123”。而“123”就其中所含阿拉伯数字的总个数“3”以及其中三个数字之间的关系“3=1+2”而言,恰好属于“pq3”这种组成形式,同理,所以对“123”不论再按本程序操作多少次,其结果都还会是“123”,并且不可能再转变成其他形式的数字串。也就说数字串“123”是对任意一数字串“Q”按本程序反复操作下去的最终结果。至此,“西西弗斯串(数学黑洞)”——“123”现象得证。</wbr></wbr></wbr><wbr></wbr>
至于三个步骤相应改变后的程序所导致的“数学黑洞”——“213”、“312”、“321”、“132”和“231”现象的证明方法与本证明相似,这里就不再赘述。
==================================================================================================
作者:nash_ 欢迎转载,与人分享是进步的源泉!
转载请保留原文地址:http://blog.csdn.net/nash_/article/details/8249661
===================================================================================================
分享到:
相关推荐
西西弗斯黑洞【123数字黑洞】 /// 设定一个任意数字串,数出这个数中的偶数个数,奇数个数,及这个数中所包含的所有位数的总数 /// 比如86420135799,按照偶数个数5,奇数个数6,数字总个数11,拼接成一个新的...
西西弗斯黑洞.py
西西磷 Sisyphos是一个开源学校信息系统(SIS) 安装 下载并解压缩文件。 上载到您的Web服务器。 创建一个mysql数据库 运行sisyphos设置向导 http:// {yourwebserver} /sisyphos/sisSetup.html 遵循安装向导的...
十八、西西弗斯数 13 十九、高度合成数 13 二十、斐波那契数 13 二十一、亲和数 14 二十二、欧拉数 14 二十三、欧拉的其他公式 15 二十四、欧拉方程 15 二十五、勾股数的特点 16 二十六、勾股数系的系和组 17 二十七...
精弗斯——新代系统模拟器,可以模拟铣床和车床。DOS模拟器
跨境电商背景下的智能家居企业发展途径探究——以无锡弗斯门控公司为例.pdf
跨境电商背景下的智能家居企业发展途径探究——以无锡弗斯门控公司为例
二)新版本增加了对G92、G82(华中)多头螺纹加工功能的支持。 三)新版本增加了对FANUC、GSK980TD宏程序WHILE的双层嵌套功能支持。 四)新版本纠正了宏程序旧版存在的若干缺陷,增加了对GOTO指令的支持(FANUC,GSK...
针对当前国内外机构和学者在使用航空重力测量厄特弗斯改正公式中存在的不一致性问题,详细分析了不同时期、不同形式改正计算公式的来源及其相互关系,并比较了它们在数值上的差异,指出我国作业部门目前使用近似公式...
但是,由于中国的回归,这位非洲现代的西西弗斯传奇人物引起了更多兴趣。 的确,在过去的二十年中,我们看到北京代表某种古老的友谊在非洲增加了投资,并成为非洲大陆(2009年)的第一个双边商业伙伴,而不是西方...
西西弗斯式的命运 9 排序 10 Ackerman函数 11 ackerman 12 pascal 13 ferry 14 isCBT 15 levelOrder 16 same 17 traverse 18 bernoulli 19 heap 20 optimization 21 settest 22 bst 23 hash 24 distinct 25 qsort 26...
sisyphus-cli(西西弗斯) 一个从swagger自动生成ts,js代码的工具 为什么要使用这个? 减少模板代码 接口的版本控制 请求参数和返回结果的自动提示 自动生成文档和注释 如何使用 安装cli npm install sisyphus-cli -g ...
提出了对高能子从横向极化质子的半包容性深非弹性散射中产生的带电离子和带电中性和中性钾离子的Collins和Sivers不对称性的测量。 使用所有在2007年和2010年获得的COMPASS质子数据获得的结果。柯林斯不对称性在...
西西弗斯人的任务 完成约98% B名 二进制剪辑 百度研究 C名称 克里斯·麦克马洪 科里·戈德堡 好奇的测试员 卡通测试仪 创意测试仪 创意混乱 好奇杀死了猫 反事实 测试纪事 D名 发展感 德克·简·德·格罗德(Derk-...
西西弗斯人的任务 完成约98% B名 二进制剪辑 百度研究 C名称 克里斯·麦克马洪 科里·戈德堡 好奇的测试员 卡通测试仪 创意测试仪 创意混乱 好奇杀死了猫 反事实 测试纪事 D名 发展感 德克·简·德·格罗德(Derk-...
OpenNebula Linux VM上下文化... P9,西西弗斯 亚马逊Linux 2 CentOS的 6,7,8,8流 红帽企业Linux 7、8 软呢帽 31、32、33 openSUSE 15,风滚草 德比安 8、9、10 德万 2 的Ubuntu 14.04、16.04、18.04、20.0
西西弗斯 一个高性能的java数据处理框架。 简而言之 如果您需要迭代和修改、过滤或聚合大量数据,Sisyphus 就是适合您的 Java 库。 动机 处理数据时的常见模式是读取、修改和更新大型数据集中的某些条目。 这种处理...
我们提出了具有手性... 通过结合最近的拟合将计算的分裂函数和价中的价q分布相结合,可以获得质子中的海夸克·西弗斯函数。 我们找到了第一动量xΔNfq(1)(x)的合理数值结果,而没有对自由参数进行任何微调。
科尔弗斯Colfer是一种针对速度和大小优化的二进制序列化格式,这个 crate 是的 Rust 实现。
Laravel开发-customsentinel 弗斯o定制做帕科特哨兵达卡塔利斯特