Выбрать главу

— Ну, если по-человечески, то значит, так…

— Подожди, — перебил Казимир. — Представь себе, что в данный момент ты сам не знаешь, заряжено орудие или нет. Представил?

— Представил.

— Тогда командуй. И Петя начал:

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

Петя сказал это, а Кристина тут же отстучала на машинке такой текст:

РАЗВЕТВЛЕНИЕ. УСЛОВНЫЙ ОПЕРАТОР

— Тебе здесь все понятно? — спросил Казимир.

— По правде говоря, не все.

— Тогда давай разберемся. В первой строчке программы — твоя первая команда. С ней, надеюсь, все ясно?

— Да. «Подойти к орудию». Стандартная команда.

— Дальше идет слово «если». В нем-то как раз и содержится команда для проверки. Если условие подтвердится, то Исполнитель должен выполнить команды, идущие после слова «то». В противном случае он выполняет команды, следующие после слова «иначе». Все команды, находящиеся между словами «если» и «конец условия», называются в программировании конструкцией разветвления. Может, догадаешься, почему она так называется?

— Наверное, все зависит от проверки — по какому пути пойдет выполнение команд, да?

— Совершенно верно. Действия Исполнителя имеют два варианта. А по какому варианту они пойдут, — это зависит от «если». И последнее. Слова «если… то… иначе…» в алгоритмических языках называются «условным оператором». Условный оператор — это единая конструкция, состоящая из трех этих слов. Очень часто программисты обозначают условный оператор по-английски: «if» «then»… «else».

— А мне еще одно не понятно. Для чего в программе рядом стоят слова «конец условия» и «конец»? Разве не хватило бы одного «конца»?

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

Тут Казимир подтолкнул пальцем пишущую машинку, которая почему-то не исчезла, как обычно, а качнувшись как лодка на волнах, подплыла по воздуху к Пете и остановилась перед ним.

— Ну-ка, напиши программу для Исполнителя «Пешеход».

— Самому написать?

— Самому.

— А что должен сделать «Пешеход»?

— Перейти улицу на перекрестке, где горит светофор.

— А что, он, это… умеет делать?

— Задай вопрос правильно.

— Какой у Исполнителя набор стандартных команд?

— «Стоять» и «Перейти улицу».

— А проверки?

— «Пешеход» различает зеленый цвет светофора.

— И все?

— И все.

Петя подумал и одним пальцем отстучал:

— Усвоил, — похвалил Казимир. — Испытываю чувство глубокого удовлетворения.

— А когда матросов кормить будем? — поинтересовался Петя.

— Программа готова. Вводи.

СКОЛЬКО РАЗ НУЖНО ПЕРЕПИСАТЬ ПРОГРАММУ, ЧТОБЫ НАКОРМИТЬ ВСЕХ ГРЕБЦОВ?

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

— Погоди. Сколько жареных куриц вылетит из пушки после выполнения этой программы?

— Столько же, сколько будет выстрелов.

— А сколько будет выстрелов?

— А пушка у вас автоматическая… или какая?

— Или какая.

— То есть выстрелы у нее одиночные?

— Одиночные.

— Значит, Кристина выстрелит один раз.

— Следовательно?

— Следовательно, из пушки вылетит только одна курица.

— А сколько у нас матросов?

Петя пересчитал.

— Шестеро.

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

— Двадцать четыре курицы, — подсчитал Петя. — Поэтому Кристина должна сделать двадцать четыре выстрела.

— И что ты хочешь? После каждого выстрела писать новую программу?

— Да.

— Но это же так долго! Погляди, какие у них голодные глаза, — в голосе у Казимира прозвучала неподдельная печаль.