Объясните, что происходит в каждой строке кода этой задачи. Ничего не понимаю!
Алекс
20 уровень
Код задачи
Архивный
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
YuriyExpert
3 декабря 2019, 13:24
На 20 уровне прям ничего не понимать несколько странно. Давайте поконкретнее.
+1
Алекс
3 декабря 2019, 15:30
Что делает каждый метод?
Зачем нужно переменная finishedCount?
Зачем такой громоздкий код, программировать на Java действительно так сложно?
0
IceBergMaster
3 декабря 2019, 15:40решение
Названия переменных и методов примерно описывают свой функционал.
finishedCount - счётчик финишировавших лошадей.
calculateHorsesFinished() - считает финишировавших лошадей.
prepareHorsesAndStart() - подготавливает(создаёт) лошадей и запускает их.
+3
YuriyExpert
3 декабря 2019, 15:45
Вы все лекции прочитали? Как минимум понимание что такое Thread и зачем он нужен появилось?
Код ничуть не громоздкий. Программа представляет собой примитивную эмуляцию забега на ипподроме - создаются и запускаются несколько лошадей, каждая из которых должна пройти одинаковую дистанцию. Т.к. каждая из лошадей "бежит" в отдельном Thread выполняющимся параллельно с основным, то из него Вы можете в любой момент времени узнать состояние каждой из лошадей и определить есть ли победитель забега. Причем, запуская программу несколько раз Вы заметите, что к финишу лошади приходят в разном порядке.
Попробуйте еще раз параллельно с задачей открыть лекции уровня и построчно разобраться в коде самостоятельно. Без этого дальше будет тяжеловато...
+1
Алекс
3 декабря 2019, 16:36
Хорошо, спасибо. Попробую разобраться
0