閏年的判斷-下一個閏年

2021-03-01 酒酒愛編程

好久不見,今天分享C++的經典題目——判斷閏年。

【題目描述】

閏年(Leap Year)是為了彌補因人為曆法規定造成的年度天數與地球實際公轉周期的時間差而設立的。

其根本的原因是:地球繞太陽運行周期為365天5小時48分46秒,而公曆的平年只有365日,比回歸年短約0.2422 日,所餘下的時間約為每四年累計一天,使當年的長度為366日,這一年就為閏年。

現行公曆中每400年有97個閏年。按照每四年一個閏年計算,平均每年就要多算出0.0078天,這樣經過四百年就會多算出大約3天來。因此每四百年中要減少3個閏年。

所以公曆規定:年份不是100的倍數時,若且唯若年份是4的倍數時是閏年;年份是100的倍數時,若且唯若年份是400的倍數時是閏年。

輸入年份,輸出下一個閏年的年份。

【輸入格式】

一行,一個整數YY代表年份。

【輸出格式】

一行,輸出下一個閏年的年份

【輸入樣例\#1】

1896——本身就是閏年

【輸出樣例\#1】

1904——1900不是400的倍數

【輸入樣例\#2】

1582

【輸出樣例\#2】

1584

【數據說明】

1\le Y \le 99991≤Y≤9999

參考代碼(左右滑動,可以查看全部哦)

#include <cstdio>#include <cmath>using namespace std; int main(){   int year;   scanf("%d", &year);   if ((year + 1) % 4 == 0 && (year + 1) % 100 != 0 || (year + 1) % 400 == 0)   {       printf("%d", year + 1);   }   else   {       if ((year + 2) % 4 == 0 && (year + 2) % 100 != 0 || (year + 2) % 400 == 0)       {           printf("%d", year + 2);       }       else       {           if ((year + 3) % 4 == 0 && (year + 3) % 100 != 0 || (year + 3) % 400 == 0)           {               printf("%d", year + 3);           }           else           {               if ((year + 4) % 4 == 0 && (year + 4) % 100 != 0 || (year + 4) % 400 == 4)               {                   printf("%d", year + 4);               }               else               {                   if ((year + 5) % 4 == 0 && (year + 5) % 100 != 0 || (year + 5) % 400 == 0)                   {                       printf("%d", year + 5);                   }                   else                   {                       if ((year + 6) % 4 == 0 && (year + 6) % 100 != 0 || (year + 6) % 400 == 0)                       {                           printf("%d", year + 6);                       }                       else                       {                           if ((year + 7) % 4 == 0 && (year + 7) % 100 != 0 || (year + 7) % 400 == 0)                           {                               printf("%d", year + 7);                           }                           else                           {                                   printf("%d", year + 8);                           }                       }                                  }               }           }       }   }   return 0;}

相關焦點

  • 平年與閏年的判斷
    其實啊,如果我們知道閏年的由來,要判斷平年、閏年就是輕而易舉的事情了。那麼閏年是怎麼來的呢?閏年的由來我們都知道,一年有365天,這是因為地球繞太陽公轉一周的時間是365天。但是大家知道嗎,地球繞太陽運行的周期不是恰好為365天,而是365天5小時48分46秒(合365.24219天),我們把它叫做一回歸年(tropical year)。
  • 小學生如何快速判斷閏年
    剛開始,老師講的大月、小月,特殊月份2月的天數,以及平年、閏年各多少天的,孩子都能明白,也能答對課堂上的問題。可是老師講到閏年判斷時,也是按部就班,把閏年的來歷、形成原因等詳細說明一番,還讓孩子記筆記「四年一閏,百年不閏,四百年再閏」。之後,隨意拿出幾個年份數字來讓判斷這一年是否是閏年。這下炸了鍋了,好多同學都答錯了。無奈,老師又講了一遍,我的兒子也是懵懵懂懂。
  • 如何判斷哪一年是不是閏年?
    什麼是閏年       地球繞太陽公轉一周叫做一回歸年,天文學家測算的1980年至2100年的回歸年長平均長度為
  • Excel–用mod函數判斷閏年
    閏年的概念大家都知道,4 年一閏。如何快速判斷某個年份是否為閏年?用 Excel 公式肯定比度娘快。 案例: 如何判斷 A 列中的年份是否為閏年?
  • 哪些年是閏年 計算閏年的方法
    閏年大家應該都有所了解吧,閏年是一個有著兩種第一的日期,一種是公曆中四年一閏,另一種是農曆中19年七閏的說法,我們常說的閏年是第一種,那麼閏年有哪些年,幾年一個閏年,下面就由天氣網萬年曆頻道小編來為大家解答解答。
  • 你會用Excel判斷平年或閏年嗎?
    大家對平年或閏年應該都有這樣的共識:平年的2月份只有28天,而閏年2月份是29天,平年不能被4整除,而閏年可以被4整除,平年總計有365天,而閏年是366天。那你知道如何在Excel中判斷指定的年份是平年或閏年嗎?
  • 雲計算開發學習實例:Python3 如何判斷閏年
    閏年是公曆中的名詞,閏年分為普通閏年和世紀閏年。閏年(Leap Year)是為了彌補因人為曆法規定造成的年度天數與地球實際公轉周期的時間差而設立的,補上時間差的年份為閏年。那麼在Python3中如何判斷閏年呢,以下實例可以判斷用戶輸入的年份是否為閏年:我們也可以使用內嵌 if 語句來實現:執行以上代碼輸出結果為:延伸其實 Python 的 calendar 庫中已經封裝好了一個方法
  • C語言 | 判斷某年是否只閏年
    解題思路:首先要想出如果這一年是閏年的條件,閏年是公曆中的名詞,分為普通閏年和世紀閏年,普通閏年:公曆年份是4的倍數的,且不是100的倍數,為普通閏年;世紀閏年:公曆年份是整百數的,必須是400的倍數才是世紀閏年。
  • Scratch3.0編程小課堂35(數學題:判斷閏年)
    今天我們用Scratch來做一個判斷閏年的小程序。判斷閏年判斷閏年>題目:輸入一個年份,判斷並說出是否為閏年;角色:小精靈;知識點:閏年,偵測,邏輯與,邏輯或, 邏輯不成立,判斷整除,變量,選擇;概念:閏年年的概念,是地球圍繞太陽一周的時間稱為一年,這個周期是相當穩定的,很長時間也不會變動1秒,但是很遺憾的是這個周期並不能被一天的時間整除
  • 關於閏年的常識
    也就是說這一年不是閏年.對於6514700我們也可以同樣思考.首先這是整百年.所以必然不能是普通閏年.我們只要考慮它是不是世紀閏年就可以了.6514700除以400 相當於65147除以4所以只要看47除以4就可以了.顯然不能整除所以6514700不是世紀閏年.
  • C 語言實例 - 判斷閏年、一元二次方程
    題目:用戶輸入年份,判斷該年份是否為閏年。
  • 閏年怎麼算 閏年的計算方法
    閏年是為了彌補,因人為曆法規定造成的年度天數與地球實際公轉周期的時間差而設立的。平年只有365天,而閏年有366天。那麼閏年究竟該怎麼算呢?  什麼是閏年  閏年是公曆中的名詞,分為普通閏年和世紀閏年。
  • 三年級數學:判斷平年、閏年的方法和技巧,轉給孩子,很實用!
    三年級數學:判斷平年、閏年的方法和技巧,轉給孩子,很實用!2020年是閏年,2月有29天,全年有366天。這裡就涉及到一個數學知識,閏年和平年。關於判斷平年閏年的方法:看該年份是否是4的倍數,如果是4的倍數,該年份一般是閏年;如果不是4的倍數,該年份一般是平年。公曆年份是整百數的必須是400的倍數才是閏年,反之則是平年。
  • 你真的會算閏年嗎?這可能是最全的閏年計算方法了!
    那麼某一年是不是閏年該怎麼判斷呢?通常的判斷方法是:A: 可以被4整除的,但不能被100整除B: 可以被400整除只要滿足AB任意一種情況就是閏年。當我們會判斷之後,那問題來了,為什麼會有閏年?大家都知道,地球自轉一周需要24小時,地球繞太陽一圈需要365天。但事實上這只是一個比較籠統的說法,確認來說,地球自轉一周需要的是23小時56分4秒,而地球繞太陽一圈需要的是365天5小時48分46秒 。
  • 跟老師學數學,老師一秒時間判斷平年與閏年,全班學生佩服
    《年月日》是小學數學三年級下冊的知識,學習了判斷平年和閏年的方法後,學生基本上能夠判斷出平年和閏年,但是四位數除以一位數計算起來比較麻煩,解決一道問題需要一兩分鐘的時間。今天我告訴學生,我能用一秒鐘的時間就能判斷出這個年份是平年還是閏年,學生驚住了,一副副不可相信的表情,等我給他們解釋出原因時,他們也學會了,很開心。平年與閏年的來歷。
  • 閏年小知識 閏年為什麼有三百六十五天?
    閏年小知識 閏年為什麼有三百六十五天?時間:2016-07-17 15:03   來源:川北在線整理   責任編輯:沫朵 川北在線核心提示:原標題:閏年小知識 閏年為什麼有三百六十五天?,這一年就為閏年。
  • 平年和閏年的區別 平年和閏年的不同
    已經2020年,幾乎很少有人能知道什麼是平年,什麼又是閏年。許多年輕人們也只能從老一輩的人口中得知它們之間存在的意思還有差別。那麼它們又是如何區分,有哪些區別呢?平年和閏年的區別:1. 平年的2月有28天;閏年的2月有29天。2.
  • 「平年和閏年」知識的得與失
    平年和閏年這一部分區分平年和閏年的方法是重難點內容,普通年份是4的倍數,整百年份是400的倍數的是閏年。平年的二月有28天,閏年的二月有29天,平年全年是365天,閏年全年是366天。學生還要能夠熟練的計算平年和閏年的上半年和下半年的天數:平年的上半年是181天,閏年的上半年是182天。上半年和下半年都是184天。像這些的常識,學生的應該能夠熟練的掌握並記憶。
  • 2020年小升初數學複習:日期和時間的推算與平年閏年的判斷方法
    計數單位【知識點歸納】我們常用的是十進位計數法,所謂「十進位」就是每相鄰的兩個計數單位之間的關係是:一個大單位等於十個小單位,也就是說它們之間的進率是「十」.平年、閏年的判斷方法【知識點歸納】平年、閏年的判斷方法:公元年數可被4整除為閏年,但是整百的年數必須是可以被400整除的才是閏年.其他都是平年.
  • 小學三年級數學,平年和閏年怎麼判斷,百年不閏很多人都容易忘
    其實不一定,在平年確實是365天,但如果是閏年卻有366天。在給正在讀三年級的小孩檢查作業的時候,讓我吃驚的是小孩。在區分公曆年份是平年還是閏年的時候,他竟然不知道1996年也是閏年。我問他老師怎麼教你們判斷哪一年是平年還是閏年?他說,老師告訴我們背下來2016年是閏年,往前推四年和往後推四年都是閏年。怎樣判斷平年和閏年?