是不是听说过一些人可以秒算某年某月是星期几?
他们的大脑自带日历吗?并不是,其实他们采用了一种很简单的方法,就可以悠悠地把任意一天是星期几算出来了。
想不想让陌生人瞪大眼睛用崇拜天才的目光的看着你呢?今天教你几招数学极客法术!
秒算任意一天是星期几的人是怎么做到的?方法居然这么简单
这个算某人出生那天是星期几的方法并不复杂,你要做的就是记住年和月的代码,然后把年月日加起来就可以了,练习几次以后完全可以做到心算。
日的代码
日的代码就是它本身。比如11号出生的话,对应的数字就是11。
月的代码
看一下月份的对应数字:
一月 = 6
二月 = 2
三月 = 2
四月 = 5
五月 = 0
六月 = 3
七月 = 5
八月 = 1
九月 = 4
十月 = 6
十一月 = 2
十二月 = 4
教你怎么结合红楼梦快速背:
刘姥姥我动(洞 = 0)身,我要死咯二死。
秒算任意一天是星期几的人是怎么做到的?方法居然这么简单
注意:
如果出生的那年是闰年,那么一月和二月对应的数字分别变成5和1。
年的代码
最后来看一下年的代码。
年的代码稍微复杂一些,我们先给几个特例,在后面原理的介绍里会解释这些数字怎么来的。
2000年 = 0
2001年 = 1
2002年 = 2
2003年 = 3
...
2015年 = 4
2016年 = 6
2017年 = 0
2018年 = 1
生日代码代表星期几?
最后看一下,年月日加起来的数字分别代表星期几。
很简单,
1 = 星期一
2 = 星期二
3 = 星期三
4 = 星期四
5 = 星期五
6 = 星期六
7 或 0 = 星期天
好的,你会问,那么其他数字怎么办呢?
好办,所有的二位数都可以除以7,余数就可以带入上面的表。
比如,如果年月日加起来得到21,而21可以被7整除,余0,所以那个人出生那天就是星期天。
这是因为,一周只有7天,所以星期数每隔7天会重复一下。
我们来试一下这个方法好不好用吧。
比如,有个人出生在2001年1月1日,那么TA的生日代码就是 1 + 6 + 1 = 8,8 / 7 余 1,也就是星期一。
秒算任意一天是星期几的人是怎么做到的?方法居然这么简单
果然如此!
生日代码的原理
所以,这是什么原理呢?
先说年的代码的意思。
是这样的,一个相貌普普通通,平平无奇的年是由52周+1天构成的(52 × 7 = 364),所以每一年的同月同日的星期数,会比去年要晚一天。这就是把年换算成数字的意义。
这也是为什么,所有的年月日代码不超过6,因为一周只有7天,所以生日代码8和生日代码1,生日代码9和生日代码2,…的星期数是一毛一样的。
但是,闰年有366天,所以闰年的同月同日的星期数比上一年要晚2天。所以,2004年的代码不是4,而是5。
(有人可能要反对,不对啊,闰年的1月的长度和往年一样啊,2月在第29天之前也和往年一样啊,这里多算了一天不就错了嘛。别担心,这点在算闰年的月份代码时已经考虑进去了。)
也就是说,只要记住闰年的代码,就可以比较方便地记住每一年的代码了,直接在最近的闰年基础上一年一年往上加1就可以了,大于等于7的话减去7,就这么简单。
闰年
对应代码
1984
1
1988
6
1992
4
1996
2
2000
0
2004
5
2008
3
2012
1
2016
6
2020
4
2024
2
我们来举个栗子。
比如,2001年比2000年多一年,所以2001年的代码是1,2002年代码是2,2003年代码是3;2004年是闰年,所以要在前一年基础上加2,也就是5。