// 課題06 うるう年
/* //Cプログラム
#include <stdio.h>
int isLeapYear(int year) {
if(year%4 == 0 && year%100 != 0 || year%400 == 0) {
return 1;
}
return 0;
}
int main(void) {
int year;
for (year = 1895 ; year < 1905 ; year++) {
if ( isLeapYear(year) ) {
printf("%d is Leap Year\n", year);
}
}
for (year = 1995 ; year < 2004 ; year++) {
if ( isLeapYear(year) ) {
printf("%d is Leap Year\n", year);
}
}
return 0;
}
//実行例
# ./exer06
1896 is Leap Year
1904 is Leap Year
1996 is Leap Year
2000 is Leap Year
*/
public class Exer06 {
// 実行開始点のmainメソッド以外のメソッドも漏れなくクラスの中に書く
// true/falseの意味を担うint値はboolean値に変える
// 1 -> true, 0 -> false, int -> boolean
// 他のメソッドでも,返却値の型の前にpublic staticをつける(おまじない).
public static boolean isLeapYear(int year) {
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
return true;
}
return false;
}
public static void main(String[] args) {
int year;
for (year = 1895; year < 1905; year++) {
if (isLeapYear(year)) {
System.out.printf("%d is Leap Year\n", year);
}
}
for (year = 1995; year < 2004; year++) {
if (isLeapYear(year)) {
System.out.printf("%d is Leap Year\n", year);
}
}
}
}
// おまけ
// Javaの実行コマンドの前にtimeコマンドをつければ,時間を計測できる.
/*
time /usr/bin/env /opt/java/jdk-19.0.1/bin/java --enable-preview -XX:+ShowCodeDetailsInExceptionMessages -cp /workspace/JavaExer01/bin Exer06
*/
// 一番後ろのExer06を他のファイル名にすれば,他のプログラムでも時間を計測できる.