打字猴:1.700995158e+09
1700995158 也就是说,3 456被11除的余数是2。因此,判断一个数字是不是11的倍数的一般规则是:当且仅当某个数字各个数位上的数字交替进行减法和加法运算后的结果是11的倍数(例如:0,±11,±22,…)时,这个数字就是11的倍数。31 415是11的倍数吗?通过计算3 – 1 + 4 – 1 + 5 = 10,我们知道它不是11的倍数。但是,31 416这个数字对应的计算结果是11,因此它肯定是11的倍数。
1700995159
1700995160 事实上,在生成和验证ISBN码(国际标准书号)时经常会用到与11有关的模运算。假设你的书号是一个十位数(2007年之前出版的图书大多如此),书号的前几位数字表示该书的国别、出版者和书名,但是最后一位数(校验号)的作用是让这些数字满足某种特殊关系。具体来说,如果这个十位数书号符合a–bcd–efghi–j的形式,那么j的作用是确保这个书号满足以下关系:
1700995161
1700995162 10a+ 9b+ 8c+ 7d+ 6e+ 5f+ 4g+ 3h+ 2i+j≡ 0 (mod 11)
1700995163
1700995164 例如,我写作的《心算的秘密》(Secrets of Mental Math)出版于2006年,它的书号是0–307–33840–1。由于154 = 11×14,因此:
1700995165
1700995166 10×0 + 9×3 + 8×0 + 7×7 + 6×3 + 5×3 + 4×8 + 3×4 + 2×0 + 1
1700995167
1700995168 = 154 ≡ 0 (mod 11)
1700995169
1700995170 也许你有一个疑问:如果根据这个规则,校验号必须是10,应该怎么办呢?在这种情况下,校验号会变成Ⅹ,因为这个罗马数字的意思就是10。有了这个特点之后,如果在输入ISBN时输错了某个数字,系统就可以自动检测出来。例如,如果我的书号第三位数被输错,最后的检验结果就会产生8的倍数的偏差,即偏差为±8,±16,…,±80。但是,由于所有这些数字都不是11的倍数(11是质数),因此发生偏差后的检验结果也不可能是11的倍数。事实上,利用代数运算我们可以方便地证明,如果其中两位数字发生错位,系统是可以检验出这个错误的。例如,其他数位都没有错误,但是c和f这两个数位上的数字彼此交换了位置,那么计算结果的偏差全部来自c和f这两项。计算结果本应是8c+ 5f,而现在的结果是8f+ 5c。两者之间的差是(8f+ 5c) – (8c+ 5f) = 3 (f–c),它不是11的倍数。因此,新的计算结果也不是11的倍数。
1700995171
1700995172 2007年,出版界启用了13位ISBN编码系统,所有的书号都是十三位数,而且采用的是模为10的模运算,而不是之前的模为11的模运算。在这种新的体系下,书号abc–d–efg–hijkl–m必须满足:
1700995173
1700995174 a+ 3b+c+3d+e+ 3f+g+ 3h+i+ 3j+k+ 3l+m≡ 0 (mod 10)
1700995175
1700995176 例如,本书英文版的ISBN是978–0–465–05472–5。简便的验证方法是把奇数位与偶数位上的数字分开,即:
1700995177
1700995178 (9 + 8 + 4 + 5 + 5 + 7 + 5) + 3×(7 + 0 + 6 + 0 + 4 + 2)
1700995179
1700995180 = 43 + 3×19 = 43 + 57 = 100 ≡ 0 (mod 10)
1700995181
1700995182 13位ISBN编码系统可以检测出任何单个数位的错误和大多数(不是全部)连续项位置颠倒的错误。例如,在上面的例子中,如果最后的三位数725误写成275,系统就无法检测到这个错误,因为错位之后的计算结果是110,也是10的倍数。目前,条形码、信用卡和借记卡都采用了模为10的号码验证系统。模运算还在电路和互联网金融安全等方面发挥着重要作用。
1700995183
1700995184
1700995185
1700995186
1700995187 12堂魔力数学课 [:1700993725]
1700995188 12堂魔力数学课 你出生那天是星期几?
1700995189
1700995190 与数学界的朋友聚会时,我最喜欢表演的魔术是根据他们的生日说出他们是星期几来到这个世界上的。例如,如果某人告诉你她的生日是2002年5月2日,那么你可以立刻告诉她那一天是星期四。随意给出今年或者明年的某一天,你都能计算出它是星期几,这项技能在日常生活中常常要用到。在这一章里,我会教给大家一个秘诀,并解释其中的原理。
1700995191
1700995192 不过,在学习这个方法之前,我们先要简单了解一下日历的科学原理与历史变迁。由于地球绕太阳一周需要365.25天,因此一年通常有365天,但每4年就会多一个闰日,即2月29日。(这样一来,4年正好是4×365 + 1 = 1 461天。)两千多年前,尤利乌斯·恺撒据此创建了“儒略历”。比如,2000年是闰年,之后每4年一个闰年,于是,2004、2008、2012、2016…2096年都是闰年。但是,2100年却不是闰年,为什么呢?
1700995193
1700995194 原来,一年实际上有365.243天(比365.25天大约少11分钟),因此闰年的出现频率略高于实际情况。地球绕太阳400圈需要146 097天,但是儒略历为它安排了400×365.25 = 146 100天,也就是说,多了3天。1582年,为了规避这个问题(也为了方便地确定复活节的具体日期),罗马教皇格里高利十三世创建了“格里高利历”。当年,一些信奉天主教的国家从日历里删除了10天。例如,西班牙规定,在儒略历1582年10月4日星期四这一天结束之后,就进入格里高利历1582年10月15日星期五。格里高利历规定,可以被100整除的年份不再是闰年,除非它们还可以被400整除。通过这个办法,格里高利历从儒略历中减去了3天。于是,1600年仍然是格里高利历的闰年,但是1700年、1800年和1900年却不再是闰年了。同理,2000年和2400年是闰年,而2100年、2200年和2300年则不是闰年。在这种体系下,每400年里的闰年数量是100 – 3 = 97,总天数是 (400×365) + 97 = 146 097,正好是我们想要的结果。
1700995195
1700995196 格里高利历并没有马上被所有国家接受,非天主教国家更是不愿意采用这个新历法。例如,英国及其殖民地国家直到1752年才完成了历法转换,从当年的9月2日星期三直接进入9月14日星期四。(注意,这次转换略去了11天,因为1700年在儒略历里是闰年,但在格里高利历里却不是闰年。)直到20世纪20年代,所有国家才全部弃用儒略历,改用格里高利历。一直以来,历史学者因为这个问题吃了不少苦头。我觉得历史上最有意思的一件事,就是威廉·莎士比亚与米格尔·德·塞万提斯的去世时间相差10天,但他们却都是在1616年4月23日离开人世的。原因在于,那时西班牙已经开始采用格里高利历,而英国仍在沿用儒略历。当塞万提斯于1616年4月23日去世时,莎士比亚尚未离开人世(尽管他的离世时间只比塞万提斯晚了10天),而且他所在的英国那一天的日期是1616年4月13日。
1700995197
1700995198 计算格里高利历任意一天是星期几的公式如下:
1700995199
1700995200 星期几≡月份代码 + 日期 + 年份代码(mod 7)
1700995201
1700995202 我们简单介绍一下该公式各项的含义。因为一个星期有7天,因此公式使用的模为7。例如,如果某个日期距离今天还有72天,由于72 ≡ 2 (mod 7),因此计算该日期是星期几时应该在今天的基础上再加上两天。由于28是7的倍数,如果今天是星期三,那么28天之后的那一天同样是星期三。
1700995203
1700995204 我们先介绍星期一至星期天的代码,因为这些代码比较容易记忆。
1700995205
1700995206
1700995207
[ 上一页 ]  [ :1.700995158e+09 ]  [ 下一页 ]