Сапер

Рекомендованный уровеньуровень
5+
Лет 10 назад в народе ходила примета: если офисный сотрудник чересчур сосредоточенно смотрит в экран и столь же сосредоточенно периодически кликает мышкой, скорее всего, там открыта игра «Сапер». Напомним тем, кто уже забыл, и расскажем другим, кто в силу возраста эту эпоху пропустил: «Сапер» — одна из самых популярных офисных игр, которая поставлялась вместе с Microsoft Windows. И даже сегодня, если вы сидите за компьютером с операционной системой этого семейства, то «Сапер» либо уже там установлен (просто наберите в поиске ОС слово «Сапер» или «Minesweeper»), либо его можно загрузить бесплатно из Microsoft Store. Многие Linux-сборки, например KDE и GNOME, также обзавелись похожими играми. В отличие от большинства других «убивалок времени», в этой игре отлично соблюдён баланс ходов логических и ходов наудачу, что делает «Сапера» одновременно очень увлекательной и… чуть-чуть менее бессмысленной, чем другие игры этого класса. Итак, у нас есть поле, разделённое на квадраты. Какие-то из них «заминированы», но сколько таковых и где они, мы не в курсе. Наша цель — открыть все незаминированные квадраты и не подорваться. Вы открываете квадрат левой кнопкой мыши, и если под ней мины нет, то появится число, означающее количество мин, расположенных по соседству с открытой ячейкой. Теперь нужно немного посчитать и предположить, какие ячейки можно открывать, а какие следует пометить, как заминированные. И так до победы или подрыва. В Windows разработчики встроили эту игрушку для того, чтобы люди учились управляться с мышкой (да, были времена, когда у компьютера её не было, приходилось довольствоваться только клавиатурой). Но на самом деле история «Сапера» ещё более древняя, чем история Microsoft, и её предки были доступны ещё на мейнфреймах в шестидесятых годах прошлого столетия… Впрочем, речь сейчас не об этом, а о том, чтобы создать собственную версию «Сапера»! Правила у нашей «головоломки с риском» будут точь-в-точь такими, как описано выше. Мы на JavaRush уже разделили эту непростую задачу на подзадачи и будем подсказывать вам, что делать. Дерзайте.
Комментарии (693)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Anonymous #3522222
Уровень 3
18 марта, 02:06
Me puse a hacer el juego solo viendo la documentación de la libreria, no supe como hacer para seguir al siguiente paso, y lo hice de corrido en la primera instrucción jaja, muy diferente pero funciono
Yelyzaveta Shabatyn
Уровень 29
21 февраля, 06:47
Можно ли как-то исправить или опубликовать заново игру? Она некорректно отображается в браузере.
Daniil Medvediev
Уровень 44
12 января, 16:19
Хочу делать игру в интеллидж отдельно от курса, а надо импортировать класс гейм import com.javarush.engine.cell.*;. И выдает ошибку подчеркивая джавараш. Может есть другой импорт?
Yelyzaveta Shabatyn
Уровень 29
21 февраля, 12:33
Нужно импортировать библиотеку game-engine.jar из javarush/lib. В идее это можно сделать через file -> project structure -> libraries -> "+" и там найти и выбрать джарник библиотеки
Anonymous #3434929
Уровень 6
5 января, 07:54
прежде чем творить>посмотрите cs50>эх.если бы в академии мне бы так высшую математику раскрывали,помню себя,как я "пучил"глаза и не понимал решения,что действия могуть бытя бесконечными.)(а именно события))да смотрите мат.часть внимательно ,не поверите тут есть все)
Евгений
Уровень 25
14 октября 2024, 06:12
Отличная задумка и превосходно реализованный учебно-практический материал. Авторам огромное спасибо за проделанную работу. Очень понравилось.
laerlinn
Уровень 2
27 сентября 2024, 06:09
Мде. Если вместо x и y поставить i и j, то программа работать будет, но проверку не пройдёшь. И таких нюансов много. Вроде код рабочий, а проверку не проходишь. Немного напрягает.
Anonymous #3389866
Уровень 2
4 сентября 2024, 14:07
что-то у меня глюки или в какой версии Java живут компилятор и валидатор???. в 6 задаче, не прошел тип var... поменял на List<GameObject> - все ок
cherymara
Уровень 18
24 августа 2024, 13:23
Никакого описания метода с диалогом не предоставлено, только набор параметров. Что за что отвечает? Почему два цвета передаются и что за int? Что передавать не ясно. Если нет описания, наугад херачить?
Bilal Zankiev
Уровень 24
27 августа 2024, 18:44
там все придоставили, ты о чем?
Gennady Kalinovsky
Уровень 20
28 апреля, 14:14
Всегда есть возможность попробовать разные варианты и посмотреть на результат. Но в целом согласен, не удобно
Nicko
Уровень 28
10 августа 2024, 12:27
Валидатор, ты душнила!
23 июля 2024, 07:17
Добрый день всем, я увидел этот раздел и мне сразу же стало очень интересно его потыкать, но тут я столкнулся совсеееем с неизвестными мне задачами по типу объявления классов и переопределения, я прошёл 6 уровней и тут показано 5+. я ещё не дошёл до нужных статей или же чтобы это решать надо отдельно что-то смотреть. буду благодарен за ответ
Serge Menko Java Developer
30 июля 2024, 21:09
не обращай внимания на уровень, он не соответствует уровню на курсе, я раньше 18 уровня не советовал даже бы не заглядывать в этот раздел если ты совсем новичек.