# 年月日知识库 - KB_ID: kb_ymd_week_cn_cards_detail - Version: 2.0 - Updated: 2026-03-27 - Scope: 年月日基础 + 平/闰年 + 大小月/特殊月 + 日时换算 + 星期推算 + 日期推算(跨月/跨年)+ 季度天数 + 常见应用题口径 - Retrieval: 单 Markdown 全量检索(卡片化:Title/Tags/Trigger) - Default_Convention: - 持续N天:开始当天算第1天(结束=开始+N-1) - 星期推算:用间隔天数 d,取 r=d mod 7 - 未指明口径:按 Default_Convention 作答,并在结尾注明口径 --- ## 全局答题输出规范 回答任何题目时,按以下结构输出(提高一致性与可解释性): 1) **结论**:先给最终答案(日期/星期/天数) 2) **关键步骤**:只写必要算式与推理(避免冗长) 3) **口径说明**:若涉及“持续N天/保质期”,必须写“是否包含当天” 4) **检查点**:简单自检一句(如“未跨月/已跨月”“余数为0所以星期不变”) --- # Cards(知识卡片库) > 字段含义: > - Alias:常见同义说法/检索别名(非常关键) > - Trigger:用户真实提问句式(尽量口语) > - Output:建议智能体最终输出的格式 --- ## CARD-001|一年有几个月 - Title: 一年有12个月 - Alias: 12个月 / 一年分几个月 / 一年有哪些月份 - Tags: 年, 月, 基础概念 - Trigger: - “一年有几个月?” - “一年到底分成几个月?” - “一年是不是12个月?” - “12个月是哪12个?” - Content: - 一年有 **12 个月**(1月到12月)。 - Output: - “一年有12个月。” --- ## CARD-010|平年与闰年的定义 - Title: 平年/闰年定义(365/366天;2月28/29) - Alias: 平年多少天 / 闰年多少天 / 2月为什么28或29 / 闰日 - Tags: 平年, 闰年, 2月, 年天数, 定义 - Trigger: - “平年有多少天?” - “闰年有多少天?” - “闰年比平年多几天?” - “2月为什么有时28天有时29天?” - Content: - **平年**:2月28天,全年365天。 - **闰年**:2月29天,全年366天(比平年多1天)。 - Examples: - 问:闰年全年多少天?答:366天。 - Output: - “平年365天(2月28天);闰年366天(2月29天)。” --- ## CARD-020|闰年判断(重中之重) - Title: 闰年判断(非整百看4,整百看400) - Alias: 判断闰年方法 / 闰年规则 / 百年闰年 / 400年规则 / 四年一闰 - Tags: 闰年判断, 平年判断, 整百年, 400, 4, 规则 - Trigger: - “2026年是闰年吗?” - “怎么判断一个年份是平年还是闰年?” - “整百年怎么判断闰年?” - “能被4整除就是闰年吗?” - “1900为什么不是闰年?2000为什么是闰年?” - Steps: 1) 看是否整百年:年份末两位是否为“00” 2) 若**不是整百年**: - 能被4整除 → 闰年 - 不能被4整除 → 平年 3) 若**是整百年**(末两位为00): - 能被400整除 → 闰年 - 否则 → 平年 - Content: - 速记:**四年一闰,百年不闰,四百年再闰**(公历)。 - Examples: - 2024:非整百,2024÷4整除 → 闰年 - 2025:非整百,2025÷4有余数 → 平年 - 1900:整百,1900÷400不整除 → 平年 - 2000:整百,2000÷400整除 → 闰年 - Counterexamples: - “4的倍数一定是闰年”是错的:1900是反例(整百但不是400倍数)。 - Pitfalls: - 忽略“整百年”这一关会做错世纪年。 - Output: - 结论:____年是(平年/闰年) - 理由:是否整百年;能否被4/400整除(写一句即可) --- ## CARD-030|大月/小月/特殊月(清单) - Title: 月份分类(31天大月;30天小月;2月特殊) - Alias: 哪些月31天 / 哪些月30天 / 大月有哪些 / 小月有哪些 / 2月算大月还是小月 - Tags: 大月, 小月, 特殊月, 月份天数, 2月 - Trigger: - “哪些月份有31天?” - “哪些月份只有30天?” - “2月算大月还是小月?” - “9月有几天?11月有几天?” - Content: - **大月(31天)**:1、3、5、7、8、10、12月(共7个) - **小月(30天)**:4、6、9、11月(共4个) - **特殊月**:2月(平年28天/闰年29天),不计入大/小月 - Examples: - 问:9月有几天?答:30天(小月)。 - Pitfalls: - 2月不要归为大月或小月。 - Output: - “__月是(大月/小月/特殊月),有__天。” --- ## CARD-031|月份天数表(速查表) - Title: 月份天数表(1-12月) - Alias: 月份天数一览表 / 每个月多少天 / 天数表 - Tags: 表格, 月份天数, 速查 - Trigger: - “给我一张月份天数表” - “每个月分别是多少天?” - Content: | 月份 | 天数 | |---|---| | 1 | 31 | | 2 | 28(平年)/ 29(闰年) | | 3 | 31 | | 4 | 30 | | 5 | 31 | | 6 | 30 | | 7 | 31 | | 8 | 31 | | 9 | 30 | | 10 | 31 | | 11 | 30 | | 12 | 31 | - Output: - 若问2月:先按 CARD-020 判断平/闰年,再给28或29。 --- ## CARD-040|记忆法(口诀/数字规律/拳头法) - Title: 大小月记忆法(顺口溜 + 数字规律 + 拳头法) - Alias: 背大小月口诀 / 31天月份口诀 / 七前单月大 / 拳头记忆法 - Tags: 口诀, 记忆法, 大月, 小月 - Trigger: - “怎么记住哪些月31天?” - “七前单月大什么意思?” - “拳头记忆法怎么用?” - Content: - 顺口溜: - 一三五七八十腊;三十一天永不差; - 四六九冬三十日;平年二月二十八;闰年二月把一加。 - 注:腊=12月,冬=11月 - 数字规律: - 七前单月大,八后双月大,二月特殊算。 - 拳头法(要点): - 握拳从1月开始数,**凸起=31天**,**凹陷=30天**;2月单独记。 - Output: - 给出一种最短可用的记忆法(优先顺口溜或清单)。 --- ## CARD-050|日与时换算 - Title: 1日=24时(常用换算) - Alias: 一天多少小时 / 24小时等于几天 / 半天多少小时 - Tags: 单位换算, 日, 时 - Trigger: - “一天多少小时?” - “2天多少小时?” - “半天是多少小时?” - Content: - 1日=24时 - 半日=12时 - 2日=48时 - 3日=72时 - Output: - “__日=__时”(必要时附一行乘法)。 --- ## CARD-060|星期顺序(基础) - Title: 星期顺序(周一到周日循环) - Alias: 周日后面是周几 / 星期怎么排 / 周一前面是周几 - Tags: 星期, 顺序, 基础 - Trigger: - “周日后面是周几?” - “星期怎么排顺序?” - Content: - 周一 → 周二 → 周三 → 周四 → 周五 → 周六 → 周日 →(回到周一) - Examples: - 周日后面是周一。 - Output: - 直接输出目标星期。 --- ## CARD-061|星期推算(取余三步法) - Title: 星期推算三步法(d、mod7、推进) - Alias: 间隔天数÷7看余数 / 余数星期不变 / 周几推算公式 - Tags: 星期推算, 取余, mod7, 间隔天数 - Trigger: - “已知某天是周几,过几天是周几?” - “从周三开始过20天是周几?” - “1月1日周三,1月15日周几?” - Steps: 1) 计算间隔天数 d 2) r = d mod 7 3) 起始星期往后推 r 天(r=0星期不变) - Content: - 同月常用:从 a日到 b日间隔天数 d = b - a - Examples: - 1月1日周三 → 1月15日: - d=15-1=14 - r=14 mod7=0 - 星期不变 → 周三 - 周二往后20天: - r=20 mod7=6 - 推6天:周二 → 周一 - Pitfalls: - 忘记取余会错;整7天不改变星期。 - Output: - “d=__,r=__,从周__往后推__天 → 周__。” --- ## CARD-070|持续N天(默认口径:开始当天算第1天) - Title: 持续N天:结束=开始+N-1 - Alias: N天后是哪天 / 活动持续N天到几号结束 / 从某日开始N天结束日 - Tags: 日期推算, 持续N天, 口径, +N-1 - Trigger: - “从某天开始算N天到哪天?” - “活动持续N天到几号结束?” - “开始那天算不算第一天?” - Content: - 默认口径:开始当天算第1天 - 结束日期 = 开始日期 + N − 1 - 反推开始:开始日期 = 结束日期 − N + 1 - Examples: - 3月2日开始15天(不跨月): - 结束=2+15-1=16 → 3月16日 - Pitfalls: - 忘记“-1”会多算一天。 - Output: - “按开始当天算第1天:结束=开始+N-1 → __月__日。” --- ## CARD-071|跨月日期推算(模板:先扣本月剩余) - Title: 跨月推算:先扣本月剩余,再进下月 - Alias: 跨月怎么算 / 30日开始N天 / 月底开始N天 - Tags: 跨月, 日期推算, 本月剩余, 模板 - Trigger: - “4月30日开始3天到哪天?” - “跨月怎么计算不出错?” - Steps: 1) 查本月天数 T(30/31/28/29) 2) 本月可用天数 S = T - 起始日 + 1(默认口径) 3) 若 N ≤ S:结束在本月,结束日 = 起始日 + N - 1 4) 若 N > S: - N = N - S - 月份 +1(跨年则年份+1,月份归1) - 进入下个月从1日继续,重复步骤1~4 - Examples: - 4月30日开始持续3天(默认口径): - 本月可用 S = 30-30+1=1 - N=3>1 → 剩余 N=2 - 5月1日第2天,5月2日第3天 → 5月2日 - Pitfalls: - 不先扣本月剩余,直接相加容易越界。 - Output: - “本月先用__天,剩__天到下月,结果__月__日。” --- ## CARD-072|跨年日期推算(分段:先到12月31日) - Title: 跨年推算:先到12月31日,再从次年1月1日继续 - Alias: 跨年怎么算 / 12月开始N天 / 到明年几月几日 - Tags: 跨年, 日期推算, 分段 - Trigger: - “12月开始算N天会到明年吗?” - “跨年日期怎么推算?” - Content: - 跨年一律分两段: - 段1:从开始日期算到当年12月31日(用CARD-071跨月方法也可) - 段2:剩余天数从次年1月1日起继续推算 - Examples: - 12月30日开始5天(默认口径): - 12月30日第1天,12月31日第2天 - 剩余3天到次年:1月1日第3天,1月2日第4天,1月3日第5天 - 结果:次年1月3日 - Output: - “先到本年12月31日用掉__天,剩__天到次年 → __年__月__日。” --- ## CARD-080|日序DOY(进阶工具) - Title: 日序DOY:某日期是一年中的第几天 - Alias: 一年第几天 / 今年第几天 / DOY怎么算 - Tags: 日序, DOY, 跨月, 跨年, 进阶 - Trigger: - “3月1日是一年第几天?” - “闰年3月1日为什么不一样?” - “DOY是什么?” - Content: - 定义:1月1日为第1天 - 计算:DOY =(1月到(M-1)月的总天数)+ D - 若 M>2 且该年为闰年:DOY 再 +1(因为2月多一天) - Examples: - 平年3月1日:31 + 1 = 32 - 闰年3月1日:31 + 1 + 1 = 33 - Output: - “__月__日是这一年的第__天(若闰年且过了2月,+1)。” --- ## CARD-090|季度天数(完整:Q1受2月影响) - Title: 季度天数(Q1平年90/闰年91,其余固定) - Alias: 第一季度多少天 / 每个季度多少天 / Q1 Q2 Q3 Q4 - Tags: 季度, 天数, 第一季度, 平年闰年 - Trigger: - “平年第一季度多少天?” - “闰年第一季度多少天?” - “第二季度多少天?” - Content: - 一年4个季度(每季度3个月) - Q1(1-2-3月): - 平年:31+28+31=90 - 闰年:31+29+31=91 - Q2(4-5-6月):30+31+30=91(平/闰都一样) - Q3(7-8-9月):31+31+30=92(平/闰都一样) - Q4(10-11-12月):31+30+31=92(平/闰都一样) - Output: - “先判平/闰年,再给对应季度天数。” --- ## CARD-100|连续两个大月只有:7月和8月 - Title: 连续两个大月只有:7月和8月 - Alias: 连续31天的两个月 / 连着两个大月 / 7月8月为什么都31天 - Tags: 大月, 连续 - Trigger: - “一年里连续的两个大月是哪两个月?” - Content: - 连续的两个大月只有一组:**7月和8月**。 - Output: - “7月和8月。” --- ## CARD-110|题干口径词典(持续N天/保质期:包含当天 or 不含当天) - Title: 持续N天/保质期:包含当天 or 不含当天 - Alias: 为什么差一天 / 算不算当天 / 从次日开始怎么理解 - Tags: 口径, 持续天数, 保质期, 易错 - Trigger: - “持续N天算不算当天?” - “从次日开始是什么意思?” - “为什么答案总差一天?” - Content: - 默认口径(题目未特别说明): - 开始当天算第1天 - 结束=开始+N-1 - 若题目出现:`不含当天` / `从次日开始` / `第二天起` - 开始当天不算第1天 - 常等价:结束=开始+N(而不是+N-1) - 若题目出现:`包含当天` / `算上当天` - 按默认:结束=开始+N-1 - Output: - 回答结尾必须加一句:`按题意口径:包含/不含开始当天。` --- ## CARD-120|保质期/到期日题(统一模板) - Title: 保质期/到期日:先定口径,再按持续N天推 - Alias: 生产日期+保质期 / 到期日怎么算 / 食品过期时间 - Tags: 保质期, 到期日, 日期推算, 模板 - Trigger: - “牛奶生产日期10月11日,保质期30天,到期日是哪天?” - “保质期30天包含生产当天吗?” - Steps: 1) 先用 CARD-110 确认口径:是否含生产当天 2) 用 CARD-070 求结束(若跨月用 CARD-071) 3) 输出到期日,并在末尾写口径一句话 - Output: - “口径:____(含/不含生产当天)” - “计算:结束=开始+N-1(或+N)…(必要时跨月扣减)” - “到期日:__月__日” --- ## CARD-900|易错点总卡(一次收束) - Title: 年月日与推算常见易错点(含反例) - Alias: 易错点 / 注意事项 / 常见错误 / 纠错卡 - Tags: 易错点, 纠错, 反例 - Trigger: - “年月日有哪些容易错的?” - “闰年最常见错误是什么?” - “跨月跨年要注意什么?” - Content: - 闰年判断:整百年要看400(1900平年、2000闰年) - 2月:平年28天、闰年29天;2月不算大月/小月 - 持续N天:默认要+N-1(否则差一天) - 星期:必须mod7,整7天星期不变 - 跨月:先扣本月剩余再进下月,别直接加日期越界 - Output: - 用条目列出;必要时给1900/2000反例或说明“差一天”的原因 --- ## (可选)建议内部检索标签(不必输出给用户) ## 大月 小月 特殊月 2月 平年 闰年 闰年判断 整百年 400 4 ## 星期 推算 取余 mod7 间隔天数 ## 持续N天 开始当天算第1天 不含当天 次日开始 ## 跨月 跨年 日序 DOY 季度 第一季度 ## 口径 差一天 保质期 到期日