閏平年簡介及計算過程描述

2022-03-27 11:32:49 字數 1555 閱讀 3250

曆法規則的來由

若一年按365天5h48'46''(此時82023年也是閏年)計算:

(1) 一年日數必須是整數,不便將零時數計入,所以取365天為一年,則餘5時48分46秒;

(2) 積至4年約滿一日,所以4年一「閏日」,謂之「閏年」,無「閏日」之年為平年,即平年365天,閏年366天。但到4年之時,僅有23時15分4秒閏一日,欠缺44分56秒;

(3) 積至100年(25閏)時就欠缺18時43分20秒,約合3 / 4日,所以滿100年不閏。此時又餘5時16分40秒;

(4) 積至400年餘21時6分40秒又閏。又欠缺2時53分20秒;

(5) 積至2023年計欠缺23時6分40秒,所以滿2023年不閏。此時又餘53分20秒;

(6) 積至82023年剛好24 時又一閏,這時不餘不欠,需重計算。

所以按陽曆計算就有上面的閏年規則。

判斷是否閏年的計算規則

能被4整除,且不能被100整除;或者能被400整除,且不能被3200整除;或者能被86400整除。

口訣:四年一閏,百年不閏,四百年再閏 (此口訣忽略了2023年和82023年的部分,但對於2023年的現在,2023年太遙遠,82023年更遙遠...所以非嚴格來說此口訣也正確)

計算過程描述

1. 獲取使用者輸入部分

判斷是否合法輸入(此處我們假設合法輸入指的是大於0的正整數):若是則繼續下一步:若否則給出錯誤提示,並要求使用者重新輸入。

2. 判斷閏平年核心邏輯部分

假如使用者輸入的年份是year,則:

(1) 計算 yushu = year % 4 ( % 為取餘操作符,用來計算除法餘數的,比如 2016 % 4 = 0, 2015 % 4 = 3)

如果yushu不等於0,則表示year不能被4整除,程式返回平年;

如果yushu等於0,則表示year能被4整除,繼續下一步;

(2) 計算 yushu = year % 100,

如果yushu不等於0,則表示year不能被100整除,程式返回閏年;

如果yushu等於0,則表示year能被100整除,繼續下一步;

(3) 計算 yushu = year % 400,

如果yushu不等於0,則表示year不能被400整除,程式返回平年;

如果yushu等於0,則表示year能被400整除,繼續下一步;[很多程式計算到這裡就返回閏年結束計算,正如「四年一閏,百年不閏,四百年再閏」所述,但為了使程式結果更加準確,我們還需要進行額外的判斷]

(4) 計算 yushu = year % 3200,

如果yushu不等於0,則表示year不能被3200整除,程式返回閏年;

如果yushu等於0,則表示year能被3200整除,繼續下一步;

(5) 計算 yushu = year % 86400,

如果yushu不等於0,則表示year不能被86400整除,程式返回平年;

如果yushu等於0,則表示year能被86400整除,程式返回閏年;

至此計算結束。

補碼簡介及計算

補碼是計算機語言中很基礎也很重要的乙個概念,教科書上講,計算機中的數值都是以補碼的形式儲存的,有了補碼,可以變減法為加法,但具體怎麼實現的呢?先從基礎說起。此型別表示範圍是正整數和0,不含負數。如8位無符號數的表示範圍為 0 255.無符號數的每一位都有權重。表示範圍基本上是一半正整數,一半負整數。...

計算機tlv簡介 TLV 格式及編碼

tlv 格式及編碼 幾乎所有的需要在卡片和終端之間傳送的資料都是 tlv格式的 pboc 文件裡並沒有對 tlv編碼細節做具體說明 而emv 的手冊裡雖有敘述,但並不詳細 就要很詳細的分 析tlv 的編碼格式並給出相應的 tlv解碼的偽 tlv是 tag,length 和value 的縮寫乙個基本的...

計算機簡介及常見常見Dos命令

一些物理裝置按系統結構的要求構成乙個有機整體,為計算機軟體執行提供物質基礎。計算機硬體組成 注意輸入法要調整為英文模式 碟符切換 碟符名 如 e 檢視當前目錄下所有檔案 dir 切換目錄 cd 跨碟符切換目錄需要在cd後加 d 如 d cd d e a 清理螢幕 cls 退出 exit 檢視ip i...