iT邦幫忙

2026 iThome 鐵人賽

DAY 24
0

今天要做的事
今天要繼續完善排程功能,新增多選科目排程,並且採用讀跟複習分開排,先排完讀,再排複習。

新增的功能

  • 一起排功能,自己勾選多種科目可以混合排序
  • 分為兩段,第一段排讀,第二段排複習
  • 若第一段通過,第二段沒過,可單重排第二段
  • 讀的分散兩科分開算,每科每週讀的節數相差不能超過上限
  • 每科的讀不能排進自己考試的最後一週

排程提示詞 v0.4 兩段式

第一段讀:

你是大學生的考前複習排程助手。這次要把 2 場考試一起排,分成兩段:這一段只排「讀」(第一次完整讀過),「複習」下一段再排。有些考試原本已經排好,但有些節次沒讀到,現在要重排還沒讀的部分;下面的節數已經由程式扣掉讀完的節次。請決定每份講義的「讀」放在哪些時段,並說明理由。

【考試】
今天:2026-10-07(三)
A:機率與統計,考試日期 2026-11-03(二)
B:道德駭客,考試日期 2026-11-06(五)

【範圍】(一節 50 分鐘。講義代號開頭的字母是哪一場考試;這裡的節數是「還要排」的節數,只列還有讀要排的講義)
- A1:機率與統計 講義 1,38 頁,熟悉度「熟悉」,原本讀 2 節(已讀完 0 節),還要排讀 2 節
- A2:機率與統計 講義 2,35 頁,熟悉度「普通」,原本讀 3 節(已讀完 0 節),還要排讀 3 節
- A3:機率與統計 講義 3,34 頁,熟悉度「陌生」,原本讀 5 節(已讀完 0 節),還要排讀 5 節
- B1:道德駭客 講義 1,29 頁,熟悉度「熟悉」,原本讀 2 節(已讀完 0 節),還要排讀 2 節
- B2:道德駭客 講義 2,34 頁,熟悉度「陌生」,原本讀 5 節(已讀完 0 節),還要排讀 5 節
- B3:道德駭客 講義 5,43 頁,熟悉度「熟悉」,原本讀 3 節(已讀完 0 節),還要排讀 3 節
- B4:道德駭客 講義 6,56 頁,熟悉度「普通」,原本讀 5 節(已讀完 0 節),還要排讀 5 節

【可以讀書的時段】(已經扣掉上課、吃飯與通勤的時間,也扣掉其他考試已經排好的節次和考試當天;每個時段 50 分鐘,編號越大越晚)
S001 10/8(四) D5 13:40-14:30
S002 10/8(四) D6 14:40-15:30
S003 10/8(四) D7 15:40-16:30
S004 10/8(四) D8 16:40-17:30
S005 10/8(四) E0 17:40-18:30
……(中間省略,共 116 個時段,格式相同)
S115 10/29(四) D8 16:40-17:30
S116 10/29(四) E0 17:40-18:30

【規則】
1. 每份講義「讀」的時段數量要剛好等於它還要排讀的節數,不多不少。
2. 只能使用上面清單裡的時段編號,每個時段只能用一次。
3. 同一天最多排 3 節,所有考試合計。
4. 每場考試的最後一週要留給複習,所以「讀」只能排在各自的範圍內:A(機率與統計)的讀只能用 S001 到 S106(到 10/26(一));B(道德駭客)的讀只能用 S001 到 S116(到 10/29(四))。
5. 「讀」要平均分散,不要全部擠在前面。每場考試分開算:同一場考試每一週排的「讀」節數(這場考試所有講義合計,加上已經讀完的讀),最多的一週和最少的一週相差不能超過 2 節。程式會檢查。
   A(機率與統計):
   第 1 週:10/8(四) 到 10/11(日),時段 S001 到 S022,已經有 0 節讀
   第 2 週:10/12(一) 到 10/18(日),時段 S023 到 S059,已經有 0 節讀
   第 3 週:10/19(一) 到 10/25(日),時段 S060 到 S096,已經有 0 節讀
   B(道德駭客):
   第 1 週:10/8(四) 到 10/11(日),時段 S001 到 S022,已經有 0 節讀
   第 2 週:10/12(一) 到 10/18(日),時段 S023 到 S059,已經有 0 節讀
   第 3 週:10/19(一) 到 10/25(日),時段 S060 到 S096,已經有 0 節讀
   第 4 週:10/26(一) 到 10/29(四),時段 S097 到 S116,已經有 0 節讀
6. 要怎麼分配由你判斷。理由要寫出你考慮了什麼,例如兩場考試的講義怎麼安排先後、為什麼排在這幾天。

【輸出格式】
只輸出一個 JSON 物件,前後不要有任何其他文字。handout 只寫講義代號(例如 A1),read 只寫時段編號:
{"plan":[{"handout":"講義代號","read":["時段編號"],"reason":"一兩句話"}],"overall":"兩三句話說明整體安排"}

機統的週次只有 3 週,因為 10/26 那週在範圍內只有 1 天,照 Day23 的規則,不到 4 天的週不比。

第二段複習:

你是大學生的考前複習排程助手。這次把 2 場考試一起排,「讀」已經排好了,這一段只排「複習」(考前再看一次)。請決定每份講義的複習放在哪些時段,並說明理由。

【考試】
今天:2026-10-07(三)
A:機率與統計,考試日期 2026-11-03(二)
B:道德駭客,考試日期 2026-11-06(五)

【要排的複習】(一節 50 分鐘。講義代號開頭的字母是哪一場考試)
- A1:機率與統計 講義 1,複習 1 節;它最後一節「讀」在 S085(10/24(六) D2),複習要排在這之後
- A2:機率與統計 講義 2,複習 1 節;它最後一節「讀」在 S071(10/21(三) D6),複習要排在這之後
- A3:機率與統計 講義 3,複習 1 節;它最後一節「讀」在 S038(10/15(四) D5),複習要排在這之後
- B1:道德駭客 講義 1,複習 1 節;它最後一節「讀」在 S086(10/24(六) D3),複習要排在這之後
- B2:道德駭客 講義 2,複習 1 節;它最後一節「讀」在 S035(10/14(三) D7),複習要排在這之後
- B3:道德駭客 講義 5,複習 1 節;它最後一節「讀」在 S112(10/29(四) D5),複習要排在這之後
- B4:道德駭客 講義 6,複習 1 節;它最後一節「讀」在 S072(10/21(三) D7),複習要排在這之後

【可以排複習的時段】(只列各場考試最後一週裡還空著的時段,已經扣掉上課、吃飯與通勤、其他考試和考試當天;每個時段 50 分鐘,編號越大越晚)
S107 10/27(二) E0 17:40-18:30
S109 10/28(三) D7 15:40-16:30
S110 10/28(三) D8 16:40-17:30
S111 10/28(三) E0 17:40-18:30
S113 10/29(四) D6 14:40-15:30
……(中間省略,共 44 個時段,格式相同)
S151 11/5(四) D8 16:40-17:30
S152 11/5(四) E0 17:40-18:30

【每天還能排的節數】(這幾天已經排了讀或其他考試,上限比較少;沒有列出的日子照規則 3)
10/28(三) 還能排 2 節
10/29(四) 還能排 2 節

【規則】
1. 每份講義「複習」的時段數量要剛好等於它複習的節數,不多不少。
2. 只能使用上面清單裡的時段編號,每個時段只能用一次。
3. 同一天最多排 3 節,所有考試合計;【每天還能排的節數】有列出的日子,以列出的節數為上限。
4. 複習只能排在各自考試的最後一週:A(機率與統計)只能用 S107 到 S143(10/27(二) 到 11/2(一));B(道德駭客)只能用 S117 到 S152(10/30(五) 到 11/5(四))。同一份講義的複習,要排在它最後一節「讀」之後。
5. 要怎麼分配由你判斷。理由要寫出你考慮了什麼,例如先複習哪一份、為什麼排在這幾天。

【輸出格式】
只輸出一個 JSON 物件,前後不要有任何其他文字。handout 只寫講義代號,review 只寫時段編號:
{"plan":[{"handout":"講義代號","review":["時段編號"],"reason":"一兩句話"}],"overall":"兩三句話說明整體安排"}

清單裡沒有 S108、S112,是因為第一段已經把它們排成讀。10/28、10/29 也因為已經各排了一節讀,上限剩 2 節。

測試
勾兩科,選「剛好」,跑 3 次:

  • 第 1 次:第一段 14.4 秒、第二段 11.8 秒,兩段都通過,已存成正式排程
  • 第 2 次:第一段 17.5 秒、第二段 6.2 秒,兩段都通過
  • 第 3 次:第一段 15.6 秒、第二段 11.1 秒,兩段都通過

結果分析

  • 兩科有交錯排開
  • 讀的分散三次結果一樣:機統各週 3~4 節,道德駭客 4、4、4、3 節
  • 複習排得很整齊:機統的三份複習排在 10/31、11/1、11/2,每天一份;道德駭客的四份避開 11/3,排在 10/30、10/31、11/4、11/5

實際功能畫面截圖
勾選兩場考試
https://ithelp.ithome.com.tw/upload/images/20261008/20178861o1Rn87Lkc9.png

第一段、第二段都通過
https://ithelp.ithome.com.tw/upload/images/20261008/2017886126v3xZEFf3.png

今日總結
今天終於把一起排的功能用好了,畢竟我認為單科排不太符合我日常複習的模式,像這種多科穿插讀法才符合實際情況。

明日內容
把可以讀書的時段延長到晚上。


上一篇
【Day 23】排程功能再改進
下一篇
【Day 25】讀書時段延長到晚上
系列文
用Claude打造我的AI校園助理:從需求到實作的30天實驗 共 25 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言