Техника - молодёжи 1987-07, страница 44

Техника - молодёжи 1987-07, страница 44

т

Как же ходить по лабиринту? Схема управления традиционна для многих лабиринтных игр:

8

456

2

Для хода вперед надо нажать 8, назад — 2, влево (в сторону выхода) — 4, вправо — 6, вниз (с этажа на этаж) — 5, вверх — тоже 5, но со знаком «минус». И конечно, С/П. В ответ на вашу команду программа проверит наличие у вас воды, возможность перемещения, и, если все в порядке, вы перейдете в новую точку, координаты которой высветятся на экране. Командой XY вы можете вызвать краткую форму записи координат.

Если вы натолкнулись на препятствие или попытались выйти из лабиринта через внешнюю стену, то на экране появится «О». Команда XY даст вам возможность узнать координаты помешавшего вам препятствия. Если же в ответ на ваш ход на экране появляется ЕГГОГ, а после команды XY — Е, это означает, что вы не рассчитали запасов воды и навсегда остались в пещере.

Итак, ходить мы уже научились. А как искать клады? Для этого есть специальная команда: О С/П. Программа опять-таки проверит у вас наличие воды и произведет поиск клада в том месте, где вы находитесь. Если клада не окажется, то на экране возникнет ноль, а команда XY даст координаты места, где вы находитесь и где вы так неудачно провели поиск.

Если же клад найден, то программа делает промежуточный останов — на экране высвечивается общее количество воды, гранат или сокровищ (в зависимости от этажа) с учетом найденного клада. В этот момент в пещере раздаются шаги разбойника, привлеченного шумом. Что делать? Вы можете смело спрятаться (О С/П) и сохранить все, что у вас есть. А можете вступить с разбойником в борьбу (стрелка вверх С/П). В результате поединка произойдет «перераспределение благ». В самом лучшем случае ваш запас (воды, гранат или сокровищ) удвоится, в самом худшем вы потеряете почти все.

Проанализировав результат схватки, машинка выдаст на индикатор буквы С, Г или Е, в зависимости от этажа. Командой XY индицируется окончательное количество сокровищ, гранат или воды.

Осталось научиться прорубать ходы... Это нужно для того, чтобы выйти из тупиковой ситуации или чтобы забрать замурованный клад. Это операция непростая. Сначала нужно заложить взрывчатку именно в ту преграду, которую вы хотите убрать. Взрывчатка будет заложена, если вы сделали «неудачный» ход, то есть наткнулись на препятствие. Сам взрыв производится командой F5T. В ответ на эту команду программа проверит у вас наличие воды (как обычно), наличие гранат и уберет преграду с вашего пути. Если же гранат у вас не окажется, то на экране возник

нет ЕГГОГ, а после команды XY появится буква Г. Чтобы привести после этого программу в рабочее состояние, достаточно нажать С/П — ПМК вновь ждет ваших указаний. Если взрыв произведен, то ответом машины на команду FЖ будет ноль. Проделав проход, вы можете смело туда идти — путь свободен. Но учтите: попытка взорвать несуществующую преграду или внешнюю стенку лабиринта вызовет обвал в том месте, где вы находитесь. Выбраться из-под обвала можно, но для того, чтобы снова пройти через него, придется потратить гранаты.

И еще не забудьте: чтобы взять замурованный клад, вам потребуется целых четыре кружки воды (первая — чтобы заложить взрывчатку, вторая — сделать проход, третья — подойти к месту, где лежит клад, и четвертая — найти и взять его).

Теперь, когда вы научились ходить по пещере, искать и находить клады, убирать мешающие вам препятствия, давать отпор разбойнику, вы можете смело отправляться в путь. После выхода из пещеры вас будет ожидать трамвай одиннадцатого маршрута (на индикаторе появится число 11). Счастливого пути!

Представленный вариант игры не является единственным. Конфигурацию лабиринта можно задавать произвольным образом. План этажа лабиринта кодируется отдельно для восьмой горизонтали и для первой, второй, четвертой горизонталей, затем объединяется командой дизъюнкции и засылается в соответствующий регистр (1—3). Установленный бит соответствует проходу, неустановленный — препятствию. Аналогичным образом для регистра 6 кодируется план расположения кладов: «установленный» бит—клад есть, «не установленный» — клада нет. При помощи генератора случайных чисел можно получать случайные конфигурации лабиринта.

В качестве вариантов можно сделать ресурсы (вода, гранаты) неограниченными, заложив в начале игры соответственно в регистры Е и Д заведомо большое число (тысячу). Или, наоборот, не допускать разрушения лабиринта — уникального произведения природы, положив в регистр Д число «—1000». Тогда, даже найдя в кладах гранаты, вы не сумеете их использовать.

Если вы приняли твердое решение ни при каких обстоятельствах не вступать в борьбу с разбойником, то можно заменить команду 88.С/П на 88.0. Если же, наоборот,— бороться всегда, то надо вписать сюда стрелку вверх. Промежуточного останова в этих вариантах не будет.

Наконец, игру можно использовать как головоломку для нахождения выхода из лабиринта за минимальное количество ходов, имея перед глазами план лабиринта либо методом проб и ошибок. Для приведенной схемы оптимальный путь вы проделаете за 19 шагов.

Возможны и другие варианты игры. Найти их вам поможет ваша фантазия.

КРАТКОЕ ОПИСАНИЕ БЛОКОВ ПРОГРАММЫ

00—01 Подготовка к вводу хода. 02—05 Проверка остатков воды. 06—21 Расшифровка кода команды. 22—53 Ход, в том числе:

22—34 получение новых координат, 35—39 проверка на выход за пределы лабиринта,

40—49 проверка наличия преграды, 50—51 собственно ход. 54—61 Удаление препятствий, в том числе:

54—55 получение литеры Г, 56 проверка наличия гранат, 57—60 снятие преграды. 62—96 Поиск клада, в том числе:

62—66 проверка наличия клада, 67—69 снятие клада, 70—77 определение содержимого клада, 78—85 определение количества найденных гранат, воды или сокровищ, 86—94 суммирование и подведение итогов встречи с разбойником. 97—104 Подпрограмма проверки и использования ресурсов.

Василий ЗАХАРЕНКО,

доцент МИТХТ имени М. В. Ломоносова

ТРЕБУЕТСЯ

ВЫИГРЫШНАЯ

СТРАТЕГИЯ

Статья В. Захаренко, надо думать, раз и навсегда решает проблемы, связанные с использованием новых возможностей МК-61 и МК-52. На этот раз, кстати, мы изменяем непреложному ранее правилу: в любом случае давать варианты и для старых, и для новых моделей калькуляторов. Ничего, как говорится, не попишешь: логические операции, которых нет в распоряжении владельцев БЗ-34 и МК-54, составляют саму основу игры Захаренко. Было бы, кстати, интересно, если бы кто-нибудь прислал в КЭИ программы для реализации таких операций на старых ПМК.

Хотя программа «Пещера сокровищ» годится исключительно для МК-61 и МК-52, тем не менее для команд вызова и записи, а также стековых операций сохранены традиционные обозначения (их легче воспроизводить в тексте). В связи с вопросами читателей, познакомившихся с КЭИ лишь недавно, напоминаем: команды записи в адресуе