Я перепрошую, але чому в рішеннях до задач дуже часто надаються такі трешові алгоритми? В java.time є прекрасний клас LocalTime, за допомогою якого можна досягти елегантної перемотки часу.
private void printTime() throws InterruptedException {
LocalTime time = LocalTime.of(hours, minutes, seconds);
time = time.plusSeconds(1);
hours = time.getHour();
minutes = time.getMinute();
seconds = time.getSecond();
if (hours == 0 && minutes == 0 && seconds == 0) {
System.out.printf("У м. %s зараз опівночі!%n", cityName);
} else {
System.out.printf("У м. %s зараз %d:%d:%d!%n", cityName, hours, minutes, seconds);
}
Thread.sleep(1000);
}
Мда, задачі - знімаю шляпу...
Даже на ізі задачі дивитися страшно. Але коли розібрався шо там робиться - думаєш - ну геніально, ну!)))
Задача з літаками - саме про це. Довго читав, думав. Прочитав про synchronized... І тут в'їхав, що за допомогою synchronized тут зроблений типу допуск на полосу, який потім ще треба обнулити... Просто супер.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ