うるう年の判定(IsLeapYear)
2020-08-27
こんにちは、0371です。
今回は、うるう年の判定方法について書いていきます。
基本情報技術者試験のアルゴリズムの問題集から、擬似言語の問題を実際の言語でプログラミングしてみました。
うるう年の判定方法 とは
西暦は4で割り切れ、かつ、100で割り切れなければ、うるう年である。 また、西暦が400で割り切れるのであれば、うるう年である。 どちらにも該当しない場合は、うるう年ではない。
コード
今回は、1つの整数(西暦)からうるう年の判定を行います。
言語はJava
です。
main関数内の変数 year
に好きな西暦を当てはめてください。
Main.java
public class Main {
public static void main(String[] args) {
int year = 1600; // ここに西暦を入力
IsLeapYear(year);
}
private static void IsLeapYear(int year) {
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
System.out.println(year+"年は、うるう年です。");
} else {
System.out.println(year+"年は、うるう年ではありません。");
}
}
}
a % b == c
という記述で、a / b
の余りを求めることができます。
また、&&
でand条件、||
でor条件を表すことができます。
少ない行数で書くには、if
文の使い方が鍵になりそうです。
数値を変えて何度か実行すると、結果はこのように表示されます。
2020年は、うるう年です。
1600年は、うるう年です。
2021年は、うるう年ではありません。
今日の一言
if文で判定するだけなので、これは簡単。