Никак не могу разобраться, вроде бы по коду все верно ( как мне кажется) но работает коряво. Буду благодарен за помощь.
package com.javarush.task.task04.task0414;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
Количество дней в году
Ввести с клавиатуры год, определить количество дней в году. Результат вывести на экран в следующем виде:
количество дней в году: x
, где
х - 366 для високосного года,
х - 365 для обычного года.
Подсказка:
В високосном году - 366 дней, тогда как в обычном - 365.
1) если год делится без остатка на 400 это високосный год;
2) в оставшихся годах после этого, если год делится без остатка на 100, то это обычный год;
3) в оставшихся годах после этого, если год делится без остатка на 4, то это високосный год;
4) все оставшиеся года невисокосные.
Так, годы 1700, 1800 и 1900 не являются високосными, так как они кратны 100 и не кратны 400.
Годы 1600 и 2000 - високосные, так как они кратны 100 и кратны 400.
Годы 2100, 2200 и 2300 - не високосные.
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String reader1 = reader.readLine();
int a = Integer.parseInt(reader1);
if (a % 400 == 0)
System.out.println("количество дней в году: 366");
if (a % 100 == 0)
System.out.println("количество дней в году: 365");
if (a % 4 == 0)
System.out.println("количество дней в году: 366");
else
System.out.println("количество дней в году: 365");
}
}