◆ 指定された年が閏年かどうかを判別する

  • 現在適用されている暦では、閏年というのは厳密に定義されています。
    そのお陰でプログラム上(C)で閏年の定義も簡単に行う事が出来ます。

!ポイント
  • 閏年の判別方法.
    暦(グレゴリオ暦)上では、以下の2つの条件を満たす年を閏年としています。
    • 4で割り切れる年は閏年とする。
    • ただし、100で割り切れるが、400で割り切れない年は閏年としない。
  • プログラム上での定義.
    上記の2つの条件をプログラムで記述すると、
    (nYear%4)==0 && (nYear%100)!=0 || (nYear%400)==0
    となります。
    この論理式は nYearが閏年なら「真」となり、閏年でないなら「偽」となります。

必要なヘッダファイル
なし

関数宣言部

//関数のプロトタイプ宣言
BOOL	IsLeapYear( int nYear );

関数定義部
/*
 * Function Name:IsLeapYear( int nYear );
 *
 * Param        :int  nYear 閏年判別を行う年
 * Return       :BOOL
 * Description  :閏年の場合は TRUE を、そうでない場合はFALSEを返す
 */
int IsLeapYear( int nYear )
{
	return ( ((nYear%4)==0) && ((nYear%100)!=0) || ((nYear%400)==0) );
}



戻る