一、引入:
大數學家高斯有個好習慣:無論如何都要記日記。
用乙個整數表示:那一天是高斯出生後的第幾天。
高斯出生於:2023年4月30日。
ex:在高斯發現的乙個重要定理的日記上標註著:5343,因此可算出那天是:2023年12月15日。
高斯獲得博士學位的那天日記上標著:8113
請你算出高斯獲得博士學位的年月日。
提交答案的格式是:yyyy-mm-dd, 例如:1980-03-21
二、分析:
閏年、平年的判斷式:
year%4==0 && year%100!=0 || year%400==0
為true則為閏,反之為平。
日曆模擬法:
1. day滿最大天數,則:day置為1 且 month++
2.month滿最大月數12,則:month置為1 且 year++
三、**:
#includeusing namespace std;
int main();
int cut = 8113;
//因為出生的那天就是第一天,所以要cut-1.
for(int i = 1;i<=cut-1;i++)else
if(day > a[month])
/*ex:
1977-12-30
1977-12-31
1977-12-32 1977-13-1 1978-1-1
1978-1-2
...
*/if(month >12)
day++;
} cout《四、工程上的應用: 獲取兩個日期之間相差的天數:
// 獲取相差的天數
calendar calendar = calendar.getinstance();
calendar.settime(date1);
long timeinmillis1 = calendar.gettimeinmillis();
calendar.settime(date2);
long timeinmillis2 = calendar.gettimeinmillis();
long betweendays = (timeinmillis2 - timeinmillis1) / (1000l*3600l*24l);
system.out.println(betweendays);
2013 高斯日記
高斯日記 大數學家高斯有個好習慣 無論如何都要記日記。他的日記有個與眾不同的地方,他從不註明年月日,而是用乙個整數代替,比如 4210 後來人們知道,那個整數就是日期,它表示那一天是高斯出生後的第幾天。這或許也是個好習慣,它時時刻刻提醒著主人 日子又過去一天,還有多少時光可以用於浪費呢?高斯出生於 ...
高斯的日記
演算法大數學家高斯有個好習慣 無論如何都要記日記。他的日記有個與眾不同的地方,他從不註明年月日,而是用乙個整數代替,比如 4210 後來人們知道,那個整數就是日期,它表示那一天是高斯出生後的第幾天。這或許也是個好習慣,它時時刻刻提醒著主人 日子又過去一天,還有多少時光可以用於浪費呢?高斯出生於 17...
作業 高斯日記
大數學家高斯有個好習慣 無論如何都要記日記。他的日記有個與眾不同的地方,他從不註明年月日,而是用乙個整數代替,比如 4210 後來人們知道,那個整數就是日期,它表示那一天是高斯出生後的第幾天。這或許也是個好習慣,它時時刻刻提醒著主人 日子又過去一天,還有多少時光可以用於浪費呢?高斯出生於 1777年...