Пять уроков Великого Магистра, или повесть о том, как Петя Бочкин изучал программирование - [15]

Шрифт
Интервал

— А как можно его нарисовать? — недоверчиво спросил он.

— Да очень просто! Рисуешь огурец, а внутри пишешь: «соленый». Или «натрий хлор». Если образования хватит.

— Так вот, сегодня клипер «Котангенс» под командованием Великого Магистра и Пети Бочкина должен был отправиться на операцию. Нужно было подойти к берегам герцогства и подвергнуть его столицу бомбардировке солеными огурцами. Из всех орудий. Но кракелюры, хитрые бестии, что-то пронюхали. Они заминировали всю прибрежную акваторию. Сегодня, когда клипер шел сюда, в бухту, чтобы забрать на борт Петю («адмирала Бочкина», тут же поправил Казимир), пришлось пробираться по сплошным минным полям… Мины кракелюров представляют из себя дубовые кадушки, начиненные квашеной капустой. Кстати, это еще раз подтверждает собственное убожество кракелюров. Прочная логика! Они, мол, нас — огурцами, а мы их — капустой! Не выйдет, господа! Капусту мы любим, хотя квашеную, по правде сказать, не очень. Но никакого вреда она нам не приносит, неприятно только. Рванет такая мина под днищем, обляпает весь корабль с носа до кормы. Б-р-р… Противно!

— А-а, так это — капуста на вас? — догадался Петя.

— Где?

— А вон — на плече.

Казимир содрогнулся от омерзения.

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

— Адмирал, — сказал он, вытирая пальцы белоснежным платком, — мы должны покарать кракелюров. Команду сжигает ярость.

— А что я должен делать? — поинтересовался Петя.

Казимир зачем-то полез к Пете за шиворот и достал оттуда эскимо на палочке.

— Ангина прошла? — спросил он.

— Прошла.

— Тогда это тебе.

Потом он снова полез к Пете за шиворот и извлек оттуда вазу с букетом благоухающих роз.

— Это — твоей маме, — сказал Казимир и поставил вазу на телевизор. Затем он вытащил у Пети из-за шиворота огромную книгу под названием «Краткий философский словарь».

— Ну, это — моей жене, — сказал Казимир и пояснил: — Она у меня профессор.

Он в четвертый раз полез к Пете за шиворот, приговаривая: «Где же она? Где?»

— Что вы там ищете, Казимир, — возмутился Петя. — У меня там ничего нет!

— Ну да — ничего! А это что? — И Казимир вытянул из-под Петиной рубашки офицерский планшет с вложенной в него картой. Он развернул карту и расстелил ее на столе.

— Смотри сюда, — сказал Казимир.

ПЕТЯ СОСТАВЛЯЕТ ПРОГРАММУ ПРОХОДА КЛИПЕРА ПО МИННОМУ ПОЛЮ

Карта была такая:

— Вот — бухта, где стоит наш клипер, — пояснил Казимир. — Выход из нее заминирован кракелюрами. Здесь, к востоку, мины стоят гуще, видишь? Ты должен вывести корабль в открытое море.

— Сам?

— Зачем же? У руля будет стоять Кристина. То есть бывшая Кристина, а в настоящий момент Исполнитель-рулевой. Ты должен составить для нее программу выхода в открытое море.

— А потом?

— Потом — видно будет. Сначала проход через минные поля. Подчеркиваю: нужно провести корабль через минные поля так, чтобы ни разу не столкнуться с миной.

— Какие команды можно использовать в программе?

— Стандартных команд три: «курс — норд» (то есть на север) «право руля» и «полный вперед».

— А проверки?

— Только одна: «прямо по курсу мина».

— Все ясно, — сказал Петя. — Я выдам программу одной левой!

— Сначала спецификацию, — предупредил Казимир.

— Чтобы выйти в открытое море, нужно идти на север, — начал Петя. — Значит, первые две команды в программе должны быть: «курс — норд» и «полный вперед». Так?

— Продолжай, — сказал Казимир.

— Предположим, что впереди по курсу появится мина. Если Исполнитель ее увидит, то должен выполнить команду «право руля». Так?

— Продолжай, — сказал Казимир. — Но учти, что после этой команды мы повернем с норда на ост. С севера на восток. А открытое море у нас — на норде.

— Ясное дело, — сказал Петя. — Мы повернем на восток, чтобы не столкнуться с миной. После поворота, когда мы проедем мину, Кристина выполнит новую команду: «курс — норд». И мы снова повернем к открытому морю. Проедем мину — и повернем.

— Пиши программу, — сказал Казимир и, открыв Краткий философский словарь, погрузился в изучение слова «плюрализм».

А Петя напечатал такую программу:

 ПОВТОРЯТЬ 1000000 РАЗ
     ЕСЛИ
     ПО КУРСУ МИНА
     ТО
        ПРАВО РУЛЯ
        ПОЛНЫЙ ВПЕРЕД
     ИНАЧЕ
        КУРС НОРД
        ПОЛНЫЙ ВПЕРЕД
     КОНЕЦ УСЛОВИЯ
 КОНЕЦ ЦИКЛА
КОНЕЦ

— Готово, — сказал Петя.

Казимир дернул головой и перекинул монокль из правого глаза в левый.

— Так, — сказал он. — Ты использовал конструкцию разветвления и цикла…

— Да.

— А почему ты написал: «повторять миллион раз»? Почему не полмиллиона? Или не десять миллионов?

— Для ровного счета, — ответил Петя. — Откуда я знаю, сколько мин нам встретится, пока мы не выйдем в открытое море? Но уж не больше миллиона…

— А если миллиард?

— Тогда мы взорвемся, — хладнокровно ответил Петя. — Миллион мин объедем, а на миллион первой — взорвемся.

— А мы с твоей программой еще раньше взорвемся, — заметил Казимир. — Или сядем на мель.

— Это почему?

— Гляди, — и Казимир начертил на карте курс корабля:

— При каждой встрече с миной, — начал объяснять Казимир, — Исполнитель будет выполнять команду «право руля». Поскольку в восточной части бухты минное поле очень густое, то «Котангенс» будет стремительно отклоняться к востоку. А так как береговая дуга бухты в этом месте круто уходит на север, то мы сядем на мель раньше, чем пересечем минное поле. Но это — в лучшем случае. А в худшем — мы столкнемся с миной сразу после команды «право руля». Ведь у Исполнителя отсутствует проверка «справа по борту мин нет», и поворачивать корабль Кристина будет вслепую. А вдруг как раз в том месте, куда она повернет, — стоит мина? Разве можно вслепую разъезжать по минным полям? Нет, адмирал, ваша программа никуда не годится.


Рекомендуем почитать
Животный алфавит

Весёлые квадратные зверюшки имеют свой собственный порядок: русский алфавит. Кто на букву Ю? – Юрок! А как выглядит квадратный юрок?


Как собрать кубик Рубика 3х3х3. Простой метод для начинающих

В этой книге вы найдете один из способов для начинающих, как можно быстро и очень легко собрать кубик Рубика. По моему опыту, множество людей способны собрать кубик с помощью метода, описанного в этой книге, за врем, менее 2 минут из любого его состояния запутанности. В рамках этой книги я постараюсь научить вас технике сборки кубика Рубика, которую я сам освоил еще в 1988 году, когда был ребенком. Этот метод довольно прост и позволяет научиться собирать кубик Рубика за 1,5 – 2 минуты без лишних тренировок, но с некоторым необходимым усердием.


Дудочка и барабан

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


Логопедические скороговорки и считалки

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


Баллада Мефистофеля

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


Оздоровительный массаж в домашних условиях : пособие для родителей

В пособии раскрывается значение массажа для здоровья ребенка, предлагаются комплексы массажа на первом году жизни, а также описываются виды профилактического и оздоровительного массажа при различных заболеваниях, отмечаются противопоказания для проведения массажа.