第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

JAVA算法題

JAVA算法題

米琪卡哇伊 2018-12-07 02:01:04
題目標(biāo)題: 高斯日記 大數(shù)學(xué)家高斯有個(gè)好習(xí)慣:無(wú)論如何都要記日記。 他的日記有個(gè)與眾不同的地方,他從不注明年月日,而是用一個(gè)整數(shù)代替,比如:4210 后來(lái)人們知道,那個(gè)整數(shù)就是日期,它表示那一天是高斯出生后的第幾天。這或許也是個(gè)好習(xí)慣,它時(shí)時(shí)刻刻提醒著主人:日子又過(guò)去一天,還有多少時(shí)光可以用于浪費(fèi)呢? 高斯出生于:1777年4月30日。 在高斯發(fā)現(xiàn)的一個(gè)重要定理的日記上標(biāo)注著:5343,因此可算出那天是:1791年12月15日。 高斯獲得博士學(xué)位的那天日記上標(biāo)著:8113 請(qǐng)你算出高斯獲得博士學(xué)位的年月日。 提交答案的格式是:yyyy-mm-dd, 例如:1980-03-21 ? 求注釋本圖片的代碼,盡量詳細(xì),謝謝!
查看完整描述

2 回答

?
largeQ

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊

 1     public static void main(String[] args) {
 2         // 記錄每月有多少天,數(shù)組腳標(biāo)從0開(kāi)始,因此第一位用0占位。
 3         // 除了二月份是28天或29天不確定,其余月份有多少天都已經(jīng)確定。
 4         //         占位  一月 二月 三月 四月 五月 六月 七月 八月 九月 十月 十一月 十二月
 5         int m[] = { 0,   31, 28,  31, 30, 31,  30,  31, 31, 30,  31,  30,   31 };
 6         
 7         // 高斯出生日期,1777年4月30日。
 8         int year = 1777, mon = 4, day = 30;
 9         
10         // 天數(shù)n = 8113 + 生日中的天數(shù) - 出生當(dāng)天。
11         int n = 8113 + day - 1;
12         
13         // 從1777年4月1日開(kāi)始推算,過(guò)了n天,當(dāng)前日期是多少。
14         
15         // 當(dāng)n的天數(shù),大于當(dāng)前遍歷月的天數(shù)時(shí),說(shuō)明當(dāng)前月份還可以增加。
16         // 直到n的天數(shù)不足一月的時(shí)候,那么n的值就是當(dāng)前日期中的日的值。
17         while (n > m[mon]) {
18             // n - 當(dāng)前遍歷月份的天數(shù)
19             n -= m[mon]; // 相當(dāng)于 n = n - m[mon];
20             // 先將月份加一,但是月份不能超過(guò)12,所以和13取余運(yùn)算,保證月份不超過(guò)12。
21             mon = ++mon % 13;// 相當(dāng)于mon++; mon = mon % 13;
22             // 如果是一月份了,說(shuō)明又過(guò)了一年
23             if (mon == 1) {
24                 // 年份加一
25                 year++;
26                 // 如果是閏年
27                 if (run(year)) {
28                     // 二月有29天
29                     m[2] = 29;
30                 } else { // 不是閏年
31                     // 二月有28天
32                     m[2] = 28;
33                 }
34             }
35         }
36         // 輸出年月日。中間的0是為了保證輸出形如:1777-04-30的效果。這種做法不正確。
37         System.out.println(year + "" + 0 + mon + "-" + n);
38     }
39 
40     /**
41      * 判斷是否為閏年
42      * @param y 年
43      * @return
44      */
45     private static boolean run(int y) {
46         // 滿足如下兩種情況其中一種,則是閏年:
47         // 1.能被4整除,且不能被100整除。
48         // 2.能被400整除。
49         if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0)) {
50             return true;
51         }
52         return false;
53     }
查看完整回答
反對(duì) 回復(fù) 2018-12-16
?
RISEBY

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超5個(gè)贊

好一個(gè)java入門(mén)人

查看完整回答
反對(duì) 回復(fù) 2018-12-16
  • 2 回答
  • 0 關(guān)注
  • 605 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)