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