茉莉花新闻网

中華青年思想與行動的聚合地

如果存在一个使用九进制的文明,那么它们会在何时有奇数和偶数的概念?

曾加的回答

先写结论:九进制对文明来说其实是非常不错的进制,虽然可能不如八进制、十六进制、十二进制,但和十进制可能半斤八两,如果按照九进制生活,文明的数学发展水平发展速度并不会和十进制有太大的差异,至于奇数和偶数的概念,更是很就早能被发现的,不值一提。

不妨我们身临其境一下,以下内容均为 九进制文明视角

为了描述方便,在这个视角下,不存在「九」这个称谓,所有「九」的称谓都被读作「十」,所以这个文明也自称使用「十进制」。而这个世界中的「百」、「千」、「万」即代表了人类十进制下的 81、729、6561……

1)算数

1a)乘法口诀

首先是这个文明中里耳熟能详的「八八乘法口诀表」

八八乘法口诀表

1b)数的整除

对于这个文明,3 和 6 是这个世界最耳熟能详的数字,毕竟这些数的倍数末尾都是 3、6。

另外比较有名的说法是「卅数」和「丗数」,这个说法比「奇数」、「偶数」更出名。

「卅数」是指除以 3 余数为 1 的数,也即末尾为 1、4、7 的数;
「丗数」是指除以 3 余数为 2 的数,也即末尾为 2、5、8 的数。

早年的数学研究很多就是围绕着「卅数」和「丗数」展开的。

当然,很快也诞生了就是「奇数」和「偶数」的概念,偶数是 2 的倍数,奇数不是 2 的倍数。

怎么看一个数是奇数还是偶数呢?

先说一个概念叫「奇数因子」:1、3、5、7。

然后对于不小于两位的数,我们就看「奇数因子」有几个,如果有奇数个,那这个数就是奇数,比如 12、47333、656……反之就是偶数,比如 35、40、576、7281 ……

小学数学老师会告诉你,有一个巧妙的方法,可以迅速判定一个数是否为 2、4、8 的倍数:看它们的数字和是否为 2、4、8 的倍数。在数学比较好的国度中,8 的倍数们:8、17、26、35、44、53、62、71 都是耳熟能详的。

3 的倍数就不讲了。判断一个数是否是 6 的倍数的方法,就是先看是不是 3 的倍数,再看看是不是 2 的倍数。

至于一个数是否为 5、11 的倍数,小学奥赛老师会告诉你:看这个数奇数位的和与偶数位的和之差是否为 5、11 的倍数。比如 5478,个位和百位的和 4+8=13;十位和千位的和 5+7=13,所以这个数是 5、11 的倍数。再比如 35634,奇数位之和 3+6+4 =14;偶数为之和 5+3=8,而 14-8=5,因此 35634 是 5 的倍数,但不是 11 的倍数。

至于一个数是否为 7,14,15 的倍数,一般是超纲内容。超微资深一些的老师会告诉你,有一个简便一些的判别方法,注意到 888 是 7,14,15 的倍数(888=8×7×14=4×14×15),可以将一个大数每 3 位一分割,然后求和,如果这个是 7,14 的倍数,原数也是 7,14 的倍数。

举个例子:23456122,我们先算出:23+456+122= 612,612/7=78 是 7 的倍数,因此 23456122 是 7 的倍数。

1c)计算机数学

后来诞生了计算机。

程序员们对 2 的幂次非常熟悉:2,4,8,17,35,71,152,314,628,1357……

考虑到 2 的 10 次方是 628,所以每年的 6 月 28 日被认为是「程序员节」。

人们发现 2 的 11 次方是 1357,一个这么偶数的数,居然每一位都是奇数,太神奇了!

人们还发现 2 的 21 次方为 878162,这个数和 1000000 仅仅差了 1.07%,非常接近。

于是 1MB = 2^21 B = 878162 B

2)数论

2a)素数

这个国家同样对数论感兴趣,他们比较熟悉 100 以下的 24 个素数:

2、3、5、7、12、14、18、21、24、32、34、41、45、47、52、58、65、67、74、78、81、87。

100 以内最大的素数是 87。

业余数学家费牛发现:

  • 2^2^0 + 1 = 3
  • 2^2^1 + 1 = 5
  • 2^2^2 + 1 = 18
  • 2^2^3 + 1 = 315
  • 2^2^4 + 1 = 108808

都是质数。于是他猜想,2^2^n + 1 都是素数。

但后来人们发现,2^2^5 + 1 = 12068657455 = 782 × 13542217,这个数不是素数!

2b)走马灯数

在这个文明里,人们也开始研究其他进制,发现在其他进制中,普遍存在「走马灯数」,也就是说,它的倍数会是这些数字的重新组合,而且顺序也不变,只是起点和终点不同。

比如:

  • 3 进制下的 0121,它的倍数为 1012,1210,2101;
  • 5 进制下的 032412,它的倍数为:120324,203241,241203,324120,412032;
  • 6 进制下的 0313452421,它的倍数为 1031345242,1345242103,2103134524,2421031345,3134524210,34524210313,4210313452,4524210313,5242103134;
  • 7 进制下的 1254,它的倍数为:2541,4125,5412;
  • 8 进制下的 1463,它的倍数为:3146,4631,6314;
  • 11 进制下的 142857,它的倍数为:285714,428571,571428,714285,857142;
  • 12 进制下的 093425B17685(注意:10=A,11=B);
  • 13 进制下的 24A7,它的倍数为 4A72,724A,A742……

但唯独 10 进制,似乎没有这样的「走马灯数」。

后来数学家证明了,因为 10=3×3 是平方数,在平方数进制下,我们是没有走马灯数的,真可惜!

2c)黑洞数

在这个文明里,没有人们耳熟能详的「走马灯数」。不过却有另一个耳熟能详的数,是 62853。这个数被成为「黑洞数」。

黑洞数又称陷阱数,是类具有奇特转换特性的整数。任何一个数字不全相同整数,经有限“重排求差”操作,总会得某一个或一些数,这些数即为黑洞数。

比如 31467,将其重新排序后最大的数是 76431 ,最小的数是 13467 ,相减以后得到 62853;

然后继续以上操作:86532 - 23568 = 62853

咦,居然没有发生变化?

这就是黑洞数(代码参见附录)。

事实上,已经证明,1~4 位数都不存在「黑洞数」,于是 62853 是最小的黑洞数。而且,并不是所有的 5 位数都能跌入「黑洞数」的(只有 5210 种初始值可能会跌入这个循环,占 5.8%),更大的可能是,跌入一个「循环」(除了 11111 的倍数外,其余情况均是如此):

74832 -> 63843 -> 52854 -> 60873 -> 83841 -> 74832:

因此「黑洞数」 62853 显得弥足珍贵,很多人都把它设置成密码。

3)小数

3a)小数的性质

在该文明的知乎上,数学区会有一个月经问题:0.8888888…… 是否等于 1 ?

有一个高赞回答是:注意到 1/2 = 0.4444444……,因此 1/2 × 2 = 0.888888…… 所以 0.888888…… 等于 1 。

也对,这个文明的小数发展的更早,毕竟 1/2 = 0.444444……,所以人们很早就发现了「循环小数」。

  • 1/2=0.44444444……
  • 1/3=0.3
  • 1/4=0.2222222……
  • 1/5=0.1717171717……
  • 1/6=0.1444444……
  • 1/7=0.125125125……
  • 1/8=0.111111111……

在进行 10 以下的等分时,循环节最多 3 位,也比较容易记忆,老师会要求背诵下来。

3b)圆周率

关于「圆周率」,一开始,人们认为圆周率大概比 3.12 稍微大一点。

后来锦国的科学家孙退之利用「割圆术」,算出圆周率在 3.1241881~3.1241882 之间。

并且给出了两个近似值。

  • 一个叫做「约率」:24/7 ≈ 3.125125,
  • 一个叫做「密率」:434/135 ≈ 3.12418824,前 6 位都是正确的。

人们发现,圆周率小数点后前 7 位的每一位都是 2 的幂次,人们认为这应该不是巧合。因此认为圆周率后的每一位可能都是 2 的幂次。

直到一千年后,数学大发展,计算圆周率的方式也被优化了,人们发现圆周率后第 12 位是 7,推翻了这一结论。

现在人们知道,圆周率大约是 3.124188124074427883……

3c)其他常数

后来,科学家发明了对数。定义如果以 10 为底的对数为 lg

于是 lg2≈0.275, lg3=1/2≈0.444,lg5≈0.653

后来马顿发明了微积分,但与此同时祛拳尼兹也独立发现了微积分,两个人大吵一架,不欢而散。

不过这不用要,重要的是,大家发现 e ≈ 2.641557364 这个数似乎也是一个超越数

(未完待续)


附录:「黑洞数」计算代码:

# author: PlusZeng
# date: 2022/12/4

import math

def root_10_to_n(x,n):    
    result=""        
    for i in range(math.floor(math.log(x+1,n)),-1,-1):
        result += str(math.floor(x/n**i))
        x=x%n**i        
    return result
        
def minus_hole(x,root_n):
    
    y_min=sorted(x)
    z_min=''
    z_max=''    
    a_max = 0 
    a_min = 0
    
    for i in range(0,len(x)):
        z_min += y_min[i]
        z_max += y_min[len(x)-i-1]
        a_min += int(y_min[i])*root_n**(len(x)-i-1)
        a_max += int(y_min[i])*root_n**i

    result = root_10_to_n(a_max-a_min,root_n)      
    print(z_max + ' - ' + z_min + ' = ' + result)
     
    return result
  
if __name__ == '__main__':
    print('进制:')
    n= int(input())
    print('数字:')   
    x = input()
    is_circle = 0    
    t_max = 100
    numList=[]
    numList.append(x)    
    
    for i in range(1,t_max):        
        numList.append(minus_hole(numList[i-1],n))
        for j in range(i-1,-1,-1):
            if numList[i] == numList[j]:
                is_circle = 1
                break
        if is_circle == 1:
            break
    print(numList[j],end='')
         
    for k in range(j+1,i+1):
        print(' -> ' + numList[k],end='')

同类信息

查看全部

茉莉花论坛作为一个开放社区,允许您发表任何符合社区规定的文章和评论。

茉莉花新闻网

        中国茉莉花革命网始创于2011年2月20日,受阿拉伯之春的感召,大家共同组织、发起了中国茉莉花革命。后由数名义工无偿坚持至今,并发展成为广受翻墙网民欢迎的新闻聚合网站并提供论坛服务。

新闻汇总

邮件订阅

输入您的邮件地址:

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram