Сапер

Рекомендованный уровеньуровень
5+
Лет 10 назад в народе ходила примета: если офисный сотрудник чересчур сосредоточенно смотрит в экран и столь же сосредоточенно периодически кликает мышкой, скорее всего, там открыта игра «Сапер». Напомним тем, кто уже забыл, и расскажем другим, кто в силу возраста эту эпоху пропустил: «Сапер» — одна из самых популярных офисных игр, которая поставлялась вместе с Microsoft Windows. И даже сегодня, если вы сидите за компьютером с операционной системой этого семейства, то «Сапер» либо уже там установлен (просто наберите в поиске ОС слово «Сапер» или «Minesweeper»), либо его можно загрузить бесплатно из Microsoft Store. Многие Linux-сборки, например KDE и GNOME, также обзавелись похожими играми. В отличие от большинства других «убивалок времени», в этой игре отлично соблюдён баланс ходов логических и ходов наудачу, что делает «Сапера» одновременно очень увлекательной и… чуть-чуть менее бессмысленной, чем другие игры этого класса. Итак, у нас есть поле, разделённое на квадраты. Какие-то из них «заминированы», но сколько таковых и где они, мы не в курсе. Наша цель — открыть все незаминированные квадраты и не подорваться. Вы открываете квадрат левой кнопкой мыши, и если под ней мины нет, то появится число, означающее количество мин, расположенных по соседству с открытой ячейкой. Теперь нужно немного посчитать и предположить, какие ячейки можно открывать, а какие следует пометить, как заминированные. И так до победы или подрыва. В Windows разработчики встроили эту игрушку для того, чтобы люди учились управляться с мышкой (да, были времена, когда у компьютера её не было, приходилось довольствоваться только клавиатурой). Но на самом деле история «Сапера» ещё более древняя, чем история Microsoft, и её предки были доступны ещё на мейнфреймах в шестидесятых годах прошлого столетия… Впрочем, речь сейчас не об этом, а о том, чтобы создать собственную версию «Сапера»! Правила у нашей «головоломки с риском» будут точь-в-точь такими, как описано выше. Мы на JavaRush уже разделили эту непростую задачу на подзадачи и будем подсказывать вам, что делать. Дерзайте.
Комментарии (566)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Патюков Сергей
Уровень 35
16 мая, 09:12
6 подзадача по условию, для получения всех соседних клеток, нужно использовать метод getNeighbors() Но этого метода нет в игровом движке и выкидывает ошибку Не найден метод "getNeighbors(com.javarush.games.minesweeper.GameObject)" в классе "com.javarush.games.minesweeper.MinesweeperGame". Можно этот метод написать, но тогда почему это не указанно в требованиях ? Где взять метод getNeighbors() ?
Alexey Svorkin
Уровень 26, Харьков, США
17 мая, 12:50
нигде не взять , самому написать
Ada
Уровень 25, Кельн, Германия
17 мая, 19:08
Попробуйте заново открыть задачу. Этот метод должен появиться уже с реализацией, может быть у вас не подгрузился
Alexey Svorkin
Уровень 26, Харьков, США
14 мая, 14:29
Кто-нибудь вообще сумел решить эти задачи без запуска "Правильного решения" ?
Alexey Svorkin
Уровень 26, Харьков, США
11 мая, 15:17
Ничего не получается... 20ур , а так ничему и не научился
Alexey Svorkin
Уровень 26, Харьков, США
11 мая, 06:24
При выборе задачи в Inellij IDEA выдаёт ошибку "Неизвестная ошибка"
Зепп Бранниган Admin в JavaRush Moderator
11 мая, 15:32
Обратитесь к нам в ЛС.
Alexey Svorkin
Уровень 26, Харьков, США
12 мая, 03:39
они рекомендуют откатить версию IDEA
Олег
Уровень 8, Russian Federation
9 мая, 05:32
Можно ли вернуться к условиям задачи (игры) которые уже выполнены, чтобы еще раз прочесть их и сопоставить с написанным кодом?
Edward Northwind
Уровень 20, Мариуполь, Украина
1 мая, 13:19
Что-то я setScore() прописал, а никакого поля с очками не вижу...
Edward Northwind
Уровень 20, Мариуполь, Украина
1 мая, 10:35
Народ, не протупите, как я, создавая нужно не файл, а сразу класс. Файл для него создастся автоматически. А то я сидел и тупил полчаса, не понимая почему пустой класс с тремя строчками кода может не компилироваться.
rr3ds 3D_CNC_programmer
30 апреля, 15:32
так это не написание игры а использование чьей то заранее подготовленной логики с подготовленными методами и с определенными заранее движениями. Еще и не фурычит после танцев с бубном.
Anonymous #2656537
Уровень 18
30 апреля, 20:03
А движок игровой это чья-то халтура получается. Зачем ты пишешь на Java, используешь чьи то библиотечки с методами, это тоже чья-то подготовленная логика. Пиши на С. А блин, опять же чья то заранее подготовленная логика, пиши на ассемблере. Да блин, опять кто-то что-то сделал, какую-то логику добавил. Осталось только писать машинный код((((
Нурдаулет
Уровень 21
26 апреля, 03:57
У меня отображается что-то другое на экране когда я запускаю!Как-то похож на букву "Е".Как мне видеть?Админы помогите пж
Кирилл Козлов
Уровень 35, Москва, Россия
21 апреля, 13:28
Вот интересный символ для мины "\uD83D\uDCA9" 😉