Skip to content

搞英语 → 看世界

翻译英文优质信息和名人推特

Menu
  • 首页
  • 作者列表
  • 独立博客
  • 专业媒体
  • 名人推特
  • 邮件列表
  • 关于本站
Menu

几个世纪后的星期几

Posted on 2025-09-18

昨天我写了一篇帖子,概述了我这些年来写过的心算文章。我平时不怎么写心算,但我已经写了很长时间了,所以文章也积累了不少。在写这篇概述的过程中,我注意到了一个小小的空白。

在关于心算星期几的文章中,我重点介绍了本世纪的情况,然后简洁地写道:“20世纪的日期加1,22世纪的日期减2。” 这篇文章将对此进行扩展。我将更详细地解释这些规则的含义、如何将它们扩展到其他世纪,以及它们为何有效。

20世纪的日期

假设你想知道1976年7月4日是星期几。你可以使用上面链接的帖子中的方法,最终得到星期六。再向前移动一天,就会得到星期日。

未来世纪的日期

对于 2100 年代的日期,您需要找到该世纪对应日期的星期几,然后减去两天。对于 2200 年代的日期,您需要加上三天;对于 2300 年代的日期,您需要加上一天。

公历每400年重复一次,所以如果你能找到2000年到2399年的星期几,就能找到未来所有年份的星期几,只需减去足够多的400的倍数,就能得到这个范围的年份。例如,公元2825年的9月18日是星期四,因为2025年的今天是星期四。

你也可以向前或向后追溯几个世纪,但这有一个复杂之处。如果你把公历往前追溯得足够远,你就会遇到公历被采用之前的时代。

规则为何有效

那么,世纪调整规则为何有效呢?有一个简单但不完整的解释,还有一个更复杂的完整解释。

部分解释

大多数世纪的天数,即不能被 400 整除的天数,是

365 × 100 + 24 = 36524

与 5 mod 7 一致,后者与 −2 mod 7 一致。2100 年代的日期比 2000 年代的日期早 36524 天,因此一周要往后调两天。从 2100 年代到 2200 年代,以及从 2200 年代到 2300 年代,情况也是如此。

例如,2125 年 9 月 18 日距今还有 36524 天(请注意,2100 年 2 月没有闰日),因此它将是该周的提前两天,即星期二。

这个解释基本正确,但有一个问题。2100 年代的日期并非都比 2000 年代的日期提前 36524 天。2025 年 9 月 18 日到 2125 年 9 月 18 日之间确实有 3652 个4天。但 2000 年 1 月 1 日到 2100 年 1 月 1 日之间有 3652 个5天。前者是星期六,后者是星期五。看起来我们的计算过程是错误的,但事实并非如此。

完整解释

让我们回过头来看看查找星期几的算法,

  1. 取年份的最后两位数字,并加上 4 除以该数字的倍数 [1]。
  2. 添加与月份对应的常数。
  3. 添加月份中的日期。
  4. 闰年的一月或二月减 1。
  5. 取余数除以 7。
  6. 适应本世纪。

假设我们想要找到 2100 年 1 月 1 日是星期几。第一步得到的结果为 0。1 月份的常数为 6,因此在第二步结束时我们得到 6。第三步结束时我们得到 7。

现在到了关键部分:在第4步中,我们没有减1,因为2100年不是闰年。第5步的结果为0,也就是星期日。当我们根据世纪数往后推两天后,就得到了星期五。

这个解释确实很冗长,但它揭示了算法的一个微妙之处:你必须对原始年份执行该算法,特别是步骤4。例如,要查找2200年代某一年的星期几,你必须按照2200年代有效的算法执行该算法,直到最后一步。

相关文章

  • 万年历
  • 有点奇妙
  • 日历和连分数

[1] 这被称为年份额。有很多计算方法(mod 7),这些方法不太明显,但更容易心算。有趣的是,这些方法通常看起来更复杂,但执行起来却更容易。

几个世纪后的一周中的某一天一文最先出现在John D. Cook 的文章中。

原文: https://www.johndcook.com/blog/2025/09/18/day-of-the-week-centuries-from-now/

本站文章系自动翻译,站长会周期检查,如果有不当内容,请点此留言,非常感谢。
  • Abhinav
  • Abigail Pain
  • Adam Fortuna
  • Alberto Gallego
  • Alex Wlchan
  • Answer.AI
  • Arne Bahlo
  • Ben Carlson
  • Ben Kuhn
  • Bert Hubert
  • Big Technology
  • Bits about Money
  • Brandon Skerritt
  • Brian Krebs
  • ByteByteGo
  • Chip Huyen
  • Chips and Cheese
  • Christopher Butler
  • Colin Percival
  • Cool Infographics
  • Dan Sinker
  • David Walsh
  • Dmitry Dolzhenko
  • Dustin Curtis
  • eighty twenty
  • Elad Gil
  • Ellie Huxtable
  • Ethan Dalool
  • Ethan Marcotte
  • Exponential View
  • FAIL Blog
  • Founder Weekly
  • Geoffrey Huntley
  • Geoffrey Litt
  • Greg Mankiw
  • HeardThat Blog
  • Henrique Dias
  • Herman Martinus
  • Hypercritical
  • IEEE Spectrum
  • Investment Talk
  • Jaz
  • Jeff Geerling
  • Jonas Hietala
  • Josh Comeau
  • Lenny Rachitsky
  • Li Haoyi
  • Liz Danzico
  • Lou Plummer
  • Luke Wroblewski
  • Maggie Appleton
  • Matt Baer
  • Matt Stoller
  • Matthias Endler
  • Mert Bulan
  • Mind Matters
  • Mostly metrics
  • Naval Ravikant
  • News Letter
  • NextDraft
  • Non_Interactive
  • Not Boring
  • One Useful Thing
  • Phil Eaton
  • Product Market Fit
  • Readwise
  • ReedyBear
  • Robert Heaton
  • Rohit Patel
  • Ruben Schade
  • Sage Economics
  • Sam Altman
  • Sam Rose
  • selfh.st
  • Shtetl-Optimized
  • Simon schreibt
  • Slashdot
  • Small Good Things
  • Steph Ango
  • Stephen Wolfram
  • Steve Blank
  • Taylor Troesh
  • Telegram Blog
  • The Macro Compass
  • The Pomp Letter
  • thesephist
  • Thinking Deep & Wide
  • Tim Kellogg
  • Understanding AI
  • Wes Kao
  • 英文媒体
  • 英文推特
  • 英文独立博客
©2025 搞英语 → 看世界 | Design: Newspaperly WordPress Theme