高斯出生於 1777-04-30,日記用整數表示出生後的天數。已知 5343 對應 1791-12-15,求 8113 對應的日期(博士學位日)。
提交的 C 代碼邏輯混亂,主要問題:
(a%100)==0&&(a%400)==0 應為 (year%4==0 && year%100!=0) || year%400==0。// 正確閏年判斷
bool isLeap(int y) {
return (y % 4 == 0 && y % 100 != 0) || (y % 400 == 0);
}
// 核心邏輯
int days = 8113; // 目標天數
int year = 1777, month = 4, day = 30;
// 先處理 1777 年剩餘天數...
// 之後逐年遞減...
// 最後在目標年內按月遞減確定月日
經正確計算,8113 天對應 1799-08-01。詳見 CSDN 博客完整解析:高斯日記問題詳細解法。