2024年12月16日 星期一

chatgpt 寫萬年曆

未經他人苦,末勸他人善。
萬年曆是大學第一個c語言程式, 在 2024 的今年, 可以問問 chatgpt, 幾秒就完成了這程式。

chatgpt 真的是太強大了, 在 linux 上, 我習慣用 cal 這個程式看日期, chatgpt 給的範例就是這樣的格式。

cal -3
1       十一月 2024              十二月 2024              一月 2025
2 日 一 二 三 四 五 六     日 一 二  三 四  五 六  日 一  二 三  四 五 六
3                 1  2   1  2  3  4  5  6  7            1  2  3  4
4  3  4  5  6  7  8  9   8  9 10 11 12 13 14   5  6  7  8  9 10 11
5 10 11 12 13 14 15 16  15 16 17 18 19 20 21  12 13 14 15 16 17 18
6 17 18 19 20 21 22 23  22 23 24 25 26 27 28  19 20 21 22 23 24 25
7 24 25 26 27 28 29 30  29 30 31              26 27 28 29 30 31

後來我想讓這個萬年曆更像 cal 的表示格式, 陸續加了幾個提示詞:
    1. c code for calendar
    2. c code 抓到今天的日期
    3. 可以在今天日期做個標記嗎
    4. 想用終端機顏色控制碼做標記, 用紅色
    5. 紅色做前景,白色為背景
    6. 加入 -3, 列出 這個月,上個月,下個月
    7. 橫的列出來這3個月
    8. add option, if the option is -3, print the current month, the previous month, and the next month
    9. you forgot include string.h
最後的結果如 list 5

list 5. cal9 -3
1 Today's date: 2024-12-16
2     November 2024        December 2024        January 2025
3 Su Mo Tu We Th Fr Sa    Su Mo Tu We Th Fr Sa    Su Mo Tu We Th Fr Sa
4                 1  2     1  2  3  4  5  6  7              1  2  3  4
5  3  4  5  6  7  8  9     8  9 10 11 12 13 14     5  6  7  8  9 10 11
6 10 11 12 13 14 15 16    15 16 17 18 19 20 21    12 13 14 15 16 17 18
7 17 18 19 20 21 22 23    22 23 24 25 26 27 28    19 20 21 22 23 24 25
8 24 25 26 27 28 29 30    29 30 31                26 27 28 29 30 31

另外也詢問了閏年規則。

閏年的規則
閏年的規則如下:
四年一閏:年份必須能被 4 整除。
百年不閏:若年份能被 100 整除,則不是閏年(如 1900 不是閏年)。
四百年再閏:若年份能被 400 整除,則是閏年(如 2000 是閏年)。
判斷規則邏輯
若 年份能被 400 整除,則是閏年。
否則,若 年份能被 100 整除,則不是閏年。
否則,若 年份能被 4 整除,則是閏年。
其餘年份則不是閏年。
這些規則確保了閏年的平均間隔使曆法與地球繞太陽一圈的實際時間保持一致。平均每年增加約 0.2422 天(365.2422 天)。

沒有留言:

張貼留言

使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。

我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。