Racer

Рекомендованный уровеньУровень
10+
Вы когда-нибудь играли в видеоигру Speed Race? Не уверены? А, быть может, Wheels? «Автослалом»? Хорошо, а в такую игру, где вы управляете машинкой, едете на большой скорости и попутно уворачиваетесь от других машин и разных, порою очень нелогичных, препятствий? Думаем, хоть одни гоночки с препятствиями вам в вашей геймерской жизни попадались! Подобных игрушек не счесть, и они всегда были очень популярны, благодаря простым правилам и азарту. Первые представители жанра появились ещё в эпоху аркадных автоматов и позволяли, в том числе, устраивать соревнования с друзьями. А однажды, в 1981 году, подобную игру создал сам Билл Гейтс вместе с Нейлом Конценом. Называлась она Donkey.bas (расширение .bas сигналит о том, что глава Microsoft использовал язык BASIC для её написания) и входила в ранние версии PC DOS, операционной системы, которая нынешним детям может только в страшных снах присниться… В Donkey.bas, водитель машинки (игрок) должен избегать столкновения с ослами, то и дело неожиданно возникающими на дорогах. Ситуация, знакомая любому водителю! Давайте и мы тоже вслед за создателем Microsoft создадим похожую игрушку. Только не на BASIC, разумеется, да и без серых непарнокопытных обойдёмся. Будем круче, используем нашу любимую Java. Назовём игру, допустим, Racer. В ней, помимо игрока, который умеет рулить вправо и влево, а также ускоряться, будут присутствовать движущиеся по горизонтали и вертикали объекты — другие машины, а также неподвижные препятствия. Цель — добраться до финишной линии, не врезавшись ни в один из этих объектов. Финишная черта появится через какое-то определённое количество препятствий. Это не так сложно, как вам кажется, но придётся постараться. Мы на JavaRush уже разбили этапы разработки на понятные начинающим программистам шаги. Приступим?
Комментарии (24)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Vladimir Galkov22 уровень, Самара
4 февраля, 15:48
да и ещё в догонку... а почему в заданиях, использующих заведомо мелкие переменные типа найти рандом от 1 до 100 продолжают использовать тип int? когда .. ну как минимум для школярской работы хорошо бы принудить short или byte использовать. :)
kto_to35 уровень
23 февраля, 16:15
А вы уверены что хорошо было бы? По-моему когда выполняется как минимум операция + (не помню что там с -) с типами ниже int'a, все типы всё равно приводятся к int'у. Если этих переменных не много (относительно мощности ПК наверно стоит рассматривать), если они не хранятся в базе данных или на жёстком диске, то не стоит использовать short или byte вместо int. Процессору чаще всего удобнее работать именно с int'ом, по этому работая даже с byte, char и т.п. они всё равно приводятся к int. Есть даже рекомендации когда стоит использовать что-то кроме int'a без особой надобности.
Vladimir Galkov22 уровень, Самара
23 февраля, 16:41
я бы так сказал, что половина примеров тут не жизненны.. такова судьба системы обучения - никто не будет в два цикла сортировать массив, когда можно написать Arrays.sort(array); и вообще никогда больше не вспоминать ни про пузырьки ни про что-то ещё... т.е. через пару лет письма кода вообще забудет что это такое и встречая сортировку в 2а цикла каждый будет подозревать, что это какая-то хитрая сортировка и будет терять на разбор этого кода при поиске ошибок... так же и про использование типов - в жизни лучше даже не пробовать использовать что-то меньше int из-за side эффектов приведения типов. но это учебный сайт и закладывать рогатки, которые НЕЛЬЗЯ применять в коде, развиваемом несколькими людьми, но которые работают - хорошая идея. из-за неизбежных мучений с side эффектами. я не хочу в жизни видеть эти short и byte в арифметических выражениях, кроме вывода данных во внешнюю базу. Да и то тестирование и дебаг в этих случаях будет расти из-за сомнительной экономии пары мегабайт в памяти...
novator0 уровень
29 января, 20:02
круто
Vlad20071 уровень, Киев
19 января, 13:13
клас
Phoenix-wrc11 уровень, Владивосток
12 января, 11:21
У меня на 11 уровне в описании написано что добавилось много всего. По факту ни чего не добавилось((
Anton20 уровень, Сочи
7 января, 19:36
Alexander Artamonov38 уровень, г Ишимбай
15 ноября 2019, 10:33
147 :))
Sanga nima ismim?1 уровень, san nima qilasan shaharimi
24 октября 2019, 12:28
класные задачы
Vladislav0 уровень
17 октября 2019, 17:38
класные задачы
Павел Игонин23 уровень, Познань
4 августа 2019, 15:54
До меня только сто человек решили эту задачу)
vladoooos1 уровень, Алматы
18 мая 2019, 05:16
где это скачать