Требуется создать средствами 1С игру Охота на лис. Правила игры следующие.
Цель
игры состоит в том, чтобы как можно быстрее найти всех лис на игровом
поле.
Игровое поле
состоит из информационого и игрового полей.
Игрок имеет возможность открыть любую клетку, щелкнув ее левой кнопкой
мыши. Если в клетке находится лиса, то она показывается.
Если лисы нет, в клетке появится цифра, которая указывает, сколько лис
находится на горизонтали, вертикали и диагоналях клетки. Игра заканчивается
после поимки всех лис.
Игра реализована в виде внешнего отчета (ert-файл). Поэтому игру можно
подключить к любой конфигурации и доставить радость вашим пользователям!
Игровое поле реализовано в виде множества кнопок на трех слоях формы. Текущая игровая ситуация хранится в массиве Поле[100]. Число 0 означает куст, 1 - скрытую лису, 2- пойманную лису, 3 - число. В процедуре ОбновитьПоле выводится игровое поле на форме в соответствии с этим массивом.
Кнопка Игра, вызывает процедуру Игра(), которая начинает новую игру: расставляет на поле лис с помощью функции СлучайноеЧисло(). Кстати, очень полезная функция, но 1С ее почему-то не реализовала. Наверное, думала, что в бухгалтерии ничто не случайно.
При нажатии на кнопку с лисой вызывается процедура ЛисаПоле(), при нажатии на кнопку с кустом или скрытой лисой вызывается процедура КустПоле. Если на поле скрытой лисы не было, то отображается число лис же горизонтали, вертикали и диагоналях клетки. Это число подсчитывается процедурой КоличествоЗапеленгованныхЛис().
Если количество пойманных лис (переменная ПЛ) равняется количеству всех лис (переменная ВЛ), то игра заканчивается. Если ходов было сделано меньше, чем в рекорде, то победителю придлагается увековечить свое достижение (процедура Увековечить).
Заставьте компьютер играть в эту игру. Придумайте алгоритм для поиска всех лис за минимальное число ходов.
Скачать игру Охота на лис (14К)