Я следую книге "Искусство и наука Явы", и она показывает, как вычислить високосный год. В книге используется библиотека ACM Java Task Force.
Вот код, который использует книги:
import acm.program.*;
public class LeapYear extends ConsoleProgram {
public void run()
{
println("This program calculates leap year.");
int year = readInt("Enter the year: ");
boolean isLeapYear = ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0));
if (isLeapYear)
{
println(year + " is a leap year.");
} else
println(year + " is not a leap year.");
}
}
Теперь, вот как я рассчитал високосный год.
import acm.program.*;
public class LeapYear extends ConsoleProgram {
public void run()
{
println("This program calculates leap year.");
int year = readInt("Enter the year: ");
if ((year % 4 == 0) && year % 100 != 0)
{
println(year + " is a leap year.");
}
else if ((year % 4 == 0) && (year % 100 == 0) && (year % 400 == 0))
{
println(year + " is a leap year.");
}
else
{
println(year + " is not a leap year.");
}
}
}
Что-то не так с моим кодом, или я должен использовать тот, который предоставляется в книге?
EDIT:: Оба вышеуказанного кода работают нормально, я хочу спросить, какой код является лучшим способом для вычисления високосного года.