Шрифт:
— Что же это за сказка? — воскликнул Сережа в недоумении. — Чепуха какая-то! Ой, извини, Чип, я хотел сказать, что сказка очень интересная, но только непонятная.
— Что же тут непонятного? — проворчал Чип. — Все понятно. Делай, что написано маленькими буквами, и читай, что написано большими, и получится сказка. Вот написано N=1, значит, запомни, что сейчас N равно 1. Написано — прибавь 1 к N, значит, посмотри, чему сейчас N равно, и прибавь 1. Было 1 — станет 2, потом, когда второй раз вернешься к главе № 4, будет 2, а станет 3. А вместо слов «жилец № такой-то» читай его имя по списку жильцов. Значит, на этот раз уже не дед бабку, а бабка внучку позовет. Теперь понял?
— Ну-ка, ну-ка, — до Сережи наконец все дошло. — Ох, как здорово! Значит, пока до жильца № 6, то есть до мышки, очередь не дойдет, я все буду возвращаться и возвращаться, и все новые жильцы будут репку тянуть. А на мышке все кончится, так заранее и рассчитано. Послушай, Чип, а ведь так можно хоть сто жильцов взять, и сказка длиннее не станет, только вместо 6 надо будет всюду сто писать.
— Вот сейчас, — провозгласил Чип торжественно, — ты понял самое главное в программировании: цикл. Все идет по кругу, только жильцы прибавляются. Так зачем много раз одно и то же писать? Для этого и придуман цикл. Здесь цикл на мышке кончается, а бывает и бесконечный цикл, только его все компьютеры как огня боятся. Вот, например, сказка про попа и его собаку. Кстати, попробуй-ка напиши ее в виде программы.
— Сейчас попробую, — ответил Сережа. Он сел за стол и через пару минут написал:
ПОП И СОБАКА
— Ого, — улыбнулся Чип, — да ты, я вижу, прирожденный программист. Пожалел компьютер и вставил условие «если не надоело» в пятой главе. Сделал лазейку из бесконечного цикла. Значит, если надоело, то можно отдохнуть.
— Знаешь, Чип, только мне эта сказка совсем не нравится. Разве можно собаку мучить? Ну, наказал бы, а то сразу убивать. Давай ее спасем!
— Давай, — охотно согласился Чип. — Пусть тот, кто читает, сам выбирает для собаки наказание. Вот заменим главу № 3 на такую:
Теперь, перед тем, как читать сказку, надо выбрать наказание. Ну, скажем:
или
Кстати, такая программа, в которой можно что-то определять по желанию перед тем, как пользоваться, называется подпрограммой. А то, что надо определять, пишется в скобках после названия. Значит, мы сейчас написали сказку-подпрограмму
А когда будешь ее читать, можешь вставить, что хочешь, ну хоть
Видишь, здесь вставлено то, что надо читать вместо слова «наказал».
Ладно, спокойной ночи, мне пора. Завтра еще поиграем, хорошо?
ОТ РЕДАКЦИИ:
Дорогие ребята! Чип и вам дает задание: составить программу для сказки «Теремок». Самая лучшая и правильная программа будет напечатана в журнале. Ждем ваших писем.
Царевич выбирает невесту
На следующий день, когда Чип выпрыгнул из своей коробки, Сережа сразу его попросил:
— Давай сегодня еще в сказки-программы поиграем, а? Мне очень понравилось.
— Понравилось читать или понравилось писать?
— И то, и другое. Давай по очереди: сначала один, потом другой. Чур, ты первый пишешь!
— Ну ладно, только я ваших сказок совсем не знаю, я свою сочиню.
Чип думал минут двадцать, писал, зачеркивал, писал снова и даже что-то бормотал, забыв про все правила приличия для компьютеров. Наконец сказка-программа была готова. Вот что получилось. [2]
2
Ребята, эту сказку вы не найдете ни в одном сборнике сказок. Ее Чип сочинил сам, как сумел.