355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Пионер Журнал » Игры с Чипом » Текст книги (страница 4)
Игры с Чипом
  • Текст добавлен: 24 сентября 2016, 06:20

Текст книги "Игры с Чипом"


Автор книги: Пионер Журнал


Соавторы: Александр Мигдал
сообщить о нарушении

Текущая страница: 4 (всего у книги 9 страниц)

Роза для королевы

– Знаешь, Чип, – как-то раз признался Сережа, – вот мы с тобой уже целый год играем, а мне иногда кажется, что я ничему не научился. То есть я многое узнал, но не знаю, как все это применить.

– Ну и что же тут страшного? Мы же не в школе, и отметки я тебе ставить не собираюсь. Мы с тобой только играем, а в игре можно и ошибаться, и не знать чего-то. И все-таки ты многому научился, сам того не замечая. Давай проверим: я расскажу тебе маленькую историю, а ты подумай, что из того, что ты узнал за прошлый год, можно применить в этой истории.

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

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

Король с тоской оглядел огромные клумбы, усыпанные отборными цветами. Выбрать самую красивую из двух роз он еще сумел бы, но из тысячи... Если каждую из тысячи роз сравнить с каждой другой, это сколько же будет... тысяча раз по тысяче?..

– Билл, сколько это будет – тысячу раз по тысяче? – спросил он садовника, который вертелся рядом, не зная, как помочь королю.

– Не знаю, ваше величество, а только до завтрака не управимся!

– Что же делать, Билл? Ведь мы, пожалуй, и до завтрашнего завтрака не управимся, если все розы будем со всеми сравнивать. Если бы не королева, я бы сорвал первую попавшуюся, а так – нельзя, сам понимаешь...»

– Ну, как, – Чип прервал свой рассказ и подмигнул Сереже, – можешь помочь королю? Нет? Тогда слушай дальше...

«В королевском саду наступила тяжелая пауза, которую прервал скрипучий голос Гусеницы:

ЕСЛИ розу выбираешь, ту, что лучше(всех иных),

ТО ты первую сличаешь с той, что лучше(остальных).

С этими таинственными словами она исчезла, прежде чем король и Билл пришли в себя от изумления.

– Как тебе это нравится, Билл? – раздраженно заметил король. – Уже гусеницы начинают давать мне советы. И был бы хоть путный совет, а то – сличи первую с самой лучшей из остальных. Это мы и сами знаем, верно, Билл? А вот как найти эту самую лучшую из остальных, не сказала и уползла.

– Ваше величество, я, конечно, человек темный, но эту Гусеницу я знаю – она слов на ветер зря не бросает. Ей-богу, она нам дельный совет дала, да только как его разгадать – ума не приложу.

– А я говорю, что все это вздор! – Король не на шутку разгневался. – Во-первых...»

– Постой, постой, – закричал Сережа, – я понял, понял! Это же конкурс поросят! Которые песенки поют! А я-то слушаю, уши развесил, думаю, что же это мне напоминает?

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

Значит, ты понял, что Гусеница прочла не простой стишок, а рекурсивную программу, вернее, подпрограмму « Лучше(среди кого-то)». И что эта подпрограмма уже встречалась нам раньше, в конкурсе поросят.

– Да, и там это называлось « Лауреат(среди поросят)». Там тоже надо было сравнить первого поросенка с лауреатом(среди остальных).

Только   мы   сравнивали   пение   поросят,   а здесь – красоту роз, вот и вся разница.

– Ну, и как же должны король с садовником сравнивать розы по этому алгоритму? Можешь рассказать?

– Попробую... Ну, пусть для начала будет три розы, а не тысяча. Тогда они должны сравнить первую розу с лучшей из двух остальных. Это король умеет делать, так что сразу все получится: он сначала найдет лучшую из двух остальных, а потом сравнит ее с первой. Итого два сравнения.

– Так, ну, а дальше?

– И дальше так же. Раз мы научились за два сравнения находить лучшую из трех роз, то за три сравнения найдем лучшую из четырех: отложим первую в сторону, как советовала Гусеница, и за два сравнения найдем лучшую из трех остальных, потом сравним ее с первой – и готово дело.

– Ну, а если бы мы не знали заранее, как сравнивать между собой три розы? Ведь именно это остановило короля – он не знал, как сравнивать 999 роз, и потому считал совет Гусеницы вздорным.

– Погоди, мы это, помнится, тоже разбирали с поросятами. Если мы не знаем, как выбирать лучшую из какого-то числа роз, то мы все равно должны откладывать первую в сторону и пытаться выбирать из оставшихся с тем, чтобы потом сравнить лучшую с отложенной. Значит, они будут откладывать 998 роз, пока не останется только две, которые король сможет сравнить. Потому он лучшую из первых двух сравнит с 998-й, лучшую из этих – с 997-й и так далее. За 999 сравнений и 998 откладываний они найдут самую красивую розу в подарок королеве. И вовсе не надо сравнивать тысячу тысяч раз... Чип, что же это получается – они срежут всю клумбу, чтобы выбрать лучшую розу? А как на это посмотрит королева?

– Королева? Гм-гм... – Чип был явно смущен. – Ну, во-первых, они могут не срезать и не откладывать, а, скажем, повязывать на розы номерки, а во-вторых, во-вторых. Гусеница могла и не знать про привычки королевы!

– Чип, во-первых, если король и садовник будут повязывать на розы номерки, они провозятся весь день. А во-вторых, Гусеница, конечно, могла и не знать привычки королевы, но ты-то прекрасно знал это условие. Эх ты, Чип!

ОТ РЕДАКЦИИ:

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

Попробуйте сами исправить программу Чипа. А чтобы решить ее было проще, считайте, что розы посажены ровными рядами на прямоугольной клумбе.

А как решить ту же задачу, если розы растут не на клумбе, а в один ряд вдоль садовой дорожки?

Ждем от вас два варианта программ. Лучшие работы будут напечатаны. На конверте укажите: «Роза для королевы».

Литературный экскурс в историю счетных машин

– Расскажи мне какую-нибудь историю, пострашней и потаинственней, – попросил Сережа. – Лучше всего про Шерлока Холмса и доктора Уотсона.

– Потаинственней? – Чип  задумался  и  начал зловещим голосом:

«Доктор Уотсон протянул озябшие руки к камину и повторил:

– Нет. Холмс, это не человек, это сам дьявол! Человек не может не оставлять следов и не делать ошибок.

Холмс ничего не ответил. Полузакрыв глаза, он сидел, вытянув длинные ноги, и как будто дремал. Только пальцы, нервно барабанящие по каминной полке, выдавали, что лучший ум Лондона напряженно работает над новой задачей.

Неожиданно он вскочил. Глаза его лихорадочно блестели.

– Едемте, Уотсон, нельзя терять ни минуты!

– Но куда?

– Объясню по дороге. Эй, кеб! Кебмен, нам нужно попасть в Сохо не позднее полуночи. Вот вам соверен, гоните! Уотсон, вам доводилось слышать о леди Лавлейс?

– Ада Лавлейс? Дочь великого Байрона! Уж не хотите ли вы сказать, что она замешана в этой серии дерзких преступлений? Грабительница-аристократка, дочь поэта? Я верно рассуждаю, Холмс?

– О нет, дорогой друг, ваше воображение не в меру разыгралось. Ада Лавлейс замешана в этом деле, но не так, как вы думаете.

– Но как же, Холмс? Я теряюсь, вы говорите загадками.

– Терпение, мой друг, терпение, вот мы и у цели. Этот грязный переулок Сохо отличается от прочих только одним: в нем ровно в полночь, то есть через тридцать пять секунд, произойдет передача краденых драгоценностей... А, вот и они!

Холмс откинулся в глубину кеба и увлек за собой Уотсона. Вынырнув из тумана, на большой скорости приближался черный экипаж. Возница в плаще и маске нахлестывал лошадей. С первым ударом Биг-Бена в доме напротив внезапно отворилось окно, из него вылетел сверток и тяжело звякнул о булыжную мостовую. Из притормозившего экипажа высунулась рука, чтобы подхватить сверток... Но Холмс оказался проворнее.

– Ни с места, Мориарти! – закричал он громовым голосом, осаживая лошадей. Подоспевший Уотсон распахнул дверцу и приставил револьвер к виску неуловимого профессора Мориарти – некоронованного короля Лондонского преступного мира...

– И все-таки, Холмс, я никак не могу взять в толк, при чем же здесь почтенная леди Лавлейс? – Уотсон с наслаждением отхлебнул горячего кофе, устроился поудобнее у камина и вопросительно поглядел на Шерлока Холмса. – Вы же знали, что это Мориарти, не так ли?

– Напротив, мой друг, я и не подозревал об этом до самой последней минуты. Мои мысли шли по другому пути, на который натолкнули меня вы.

– Я? Но чем же? Я, право, в полнейшем замешательстве.

– А помните, вы давеча сказали, что человек не может не ошибаться? Вы оказались правы, Уотсон, никакой человек, даже пресловутый Мориарти, не смог бы так точно и аккуратно работать, как машина Бэббиджа.

– Машина Бэббиджа? Позвольте, позвольте, это тот чудак, который насмешил все лондонское общество лет тридцать назад? Какая-то дурацкая машина, которая складывала два и два дольше, чем это сделал бы самый тупой сыщик из Скотленд-Ярда? Ах, теперь мне понятно, почему вы вспомнили о леди Лавлейс. Она пыталась поддержать несчастного изобретателя, даже написала трактат о думающих машинах. Но о нем все быстро забыли.

– Леди Лавлейс была умнейшей женщиной, Уотсон, – Холмс помешал кочергой угли и добавил с горькой иронией, – пожалуй, слишком умной для нашего косного Лондона. Она лет на сто опередила свое время, и не ее вина, что ее идеи попали в руки негодяя. У Мориарти хватило воображения понять, какие перспективы открываются перед преступником, который может рассчитывать до секунды все свои действия. Он вложил немалые средства в развитие думающих машин, и результаты мы с вами видели сегодня ночью в Сохо.

– Но все-таки, Холмс, как же вы догадались, где и когда состоится передача драгоценностей?

– Именно безукоризненная логика и точность машины оказались роковыми для Мориарти. Ведь то, что рассчитано одной машиной, может быть точно так же рассчитано и другой? – И Холмс, улыбаясь, постучал себя по лбу черенком трубки».

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

Сережа зааплодировал.

– Здорово ты выдумал про Аду и про какого-то Бобиджа.

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

– Чип, а правда, что преступники могут пользоваться компьютером, обдумывая свои преступления?

– Конечно, могут, только сыщики ведь тоже не дураки – и они пользуются компьютером, чтобы раскрывать преступления. Например, представь себе, что в Скотленд-Ярде стоит компьютер, где имеются сведения обо всех преступниках, а инспектору Лейстреду надо найти среди них профессора Мориарти, скрывающегося под чужим именем. Он знает, что профессор очень худ, лыс, высок ростом и что ему больше 50 лет. Кроме того, профессора знает в лицо Шерлок Холмс, так что сможет его при случае опознать. Как должен Лейстред написать программу для компьютера?

– Ну, пусть компьютер отберет всех преступников с этими приметами и покажет Холмсу их фотографии.

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

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

– Браво, инспектор, вы делаете успехи! А очень худых как отобрать? Тоже выбирать ниже среднего веса?

– Нет, если отбирать ниже среднего веса, то получатся просто худые, а нам нужны очень худые – чем худее, тем лучше. Стоп! Кажется, понял: пусть найдет из них самого худого и покажет Холмсу. Если это не Мориарти, то его можно вычеркнуть из списка, снова найти самого худого и так далее. Если Мориарти действительно очень худ, то мы скоро до него доберемся – не придется перебирать миллион преступников.

– Что ж, поздравляю тебя с первым детективным алгоритмом, – торжественно сказал Чип и церемонно поклонился Сереже. – Давай теперь запишем его в виде программы.

– Давай, – радостно отозвался Сережа. Никогда еще Чип его так не хвалил, и потому теперь было приятно вдвойне.

Программа «ПОИСК МОРИАРТИ»

1. Взять из памяти приметы очередного преступника.

2.  ЕСЛИон худ, Илыс, Ивыше среднего роста, Иниже среднего веса, Истарше 50 лет, ТО:

занести его в список кандидатов и дать ему по 1 очку за каждый недостающий фунт веса по сравнению со средним весом для его роста.

3.  ЕСЛИостались еще преступники в памяти, ТО

вернуться к шагу 1.

4. Показать Холмсу кандидата с наибольшим числом очков.

5.  ЕСЛИэто Мориарти, ТО:

поймать его и остановить поиск.

6.  ИНАЧЕ:

вычеркнуть его из списка кандидатов и вернуться к шагу 4.

7.  ЕСЛИ: кандидатов больше не осталось, ТО,

значит, Мориарти оказался хитрее и надо думать дальше.

8.  КОНЕЦ.

ОТ РЕДАКЦИИ.

Сенсация! У Шерлока Холмса украли скрипку. Давайте с помощью компьютера поможем знаменитому сыщику ее найти. Приметы скрипки: цвет очень темный, размер меньше среднего, на деке две глубокие царапины. Попробуйте приметы описать так, чтобы вас понял компьютер. Лучшую программу мы опубликуем. Не бойтесь ошибок, главное, чтобы получилось интересно. На конверте напишите: «Поможем Шерлоку Холмсу».

Заклинание для лентяев

Сережа очень любил рыться в старых журналах: «Вокруг света», «Наука и жизнь», «Техника – молодежи»... Там иногда попадались такие интересные факты! Однажды в среду, придя домой после уроков, Сережа вызвал Чипа и они стали вдвоем выискивать интересные сведения.

– Знаешь, Сережа, оказывается, красные чернила бесследно смываются пятипроцентным раствором обыкновенной циклопентанпергидрофенантреновой кислоты. Очень полезная информация для школьника.

– Это что! А вот тут написано, что аборигены острова Мадагаскар умеют жестикулировать носом. Это умение передается по наследству генетическим путем.

– А здесь написано, что некоторые металлы способны направлять и усиливать человеческое биополе. Так, положенный за щеку пятак позволяет передавать и принимать мысли на расстояние до пяти метров. С третьей парты до доски достанет!

– А тут сказано, что в странах Юго-Восточной Азии существует древняя традиция сушить фунчозу на ушах у доверчивых слушателей первого апреля!

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

Когда Чип и Сережа вдоволь посмеялись, Сережа спросил:

– Знаешь,Чип, а я все-таки в прошлый раз не совсем понял, зачем ты в программах пишешь «начало цикла», «конец цикла», разве и так неясно?

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

КАЮЩИЙСЯ ЛЕНТЯЙ

 
Каждый год он на лень свою злится:
Через год перестану лениться!
Каждый месяц себе он клянется:
Через месяц работа начнется!
Каждый день он себя заклинает:
Завтра новую жизнь начинаю!
Каждый час говорит он, вздыхая:
Все, последний часок отдыхаю!
Исправляется с каждой минутой,
Но работа стоит почему-то.
 

– Ну что ж, – спокойно сказал Сережа, делая вид, что не замечает ехидных намеков Чипа, – в этом стихотворении пять циклов: по годам, по месяцам, по дням, по часам и по минутам. Да, если не знать, что из чего состоит и что за чем следует, то можно и запутаться. А как бы ты написал это стихотворение в виде программы?

Чип только этого и ждал. Вот как он написал.

Начало 1-го цикла:

ПОВТОРЯЙкаждый год, ПОКАлентяй не исправится:

«Каждый год он на лень свою злится:

Через год перестану лениться!»

   Начало 2-го цикла:

   ПОВТОРЯЙкаждый месяц:

   «Каждый месяц себе он клянется:

   Через месяц работа начнется!»

      Начало 3-го цикла:

      ПОВТОРЯЙкаждый день:

      «Каждый день он себя заклинает:

      Завтра новую жизнь начинаю!»

         Начало 4-го цикла:

         ПОВТОРЯЙкаждый час:

         «Каждый час говорит он, вздыхая:

         Все, последний часок отдыхаю!»

            Начало 5-го цикла:

            ПОВТОРЯЙкаждую минуту:

            «Исправляется с каждой минутой,

            Но работа стоит почему-то».

            Конец 5-го цикла;

         Конец 4-го цикла;

      Конец 3-го цикла;

   Конец 2-го цикла;

Конец 1-го цикла.

– Ну  как? – гордо спросил Чип. – Теперь все ясно, не то, что раньше!

– Ты, пожалуйста, не сердись, но только мне как раз наоборот раньше все было понятно, а вот теперь... Где начало, где конец, какие-то циклы, ей-богу, без циклов было проще!

– Это для вас, людей, так проще, а для компьютеров без циклов нельзя писать – собьется компьютер. В том и состоит искусство программирования: писать так, чтобы компьютер мог работать без ошибок. Человеческий язык для компьютера полон загадок.

– Вот, смотри, – продолжил Чип, – начало и конец каждого цикла написаны на одном уровне – сразу видно, какой цикл кончился, а какой нет.

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

– Давай, – согласился Чип. – Начнем с главного цикла. Мы можем сначала написать только его.

Начало 1-го цикла.

ПОВТОРЯЙкаждый год, ПОКАлентяй не исправится:

«Каждый год он на лень свою злится:

Через год перестану лениться!»

Конец 1-го цикла.

– Надеюсь, все ясно? В начале года, скажем, 1 января, лентяй вспоминает про свою лень, злится и обещает через год исправиться. Потом на весь год про это забывает. Поскольку так от лени не избавишься, он организует второй цикл и вписывает его внутрь первого.

Начало 1-го цикла.

ПОВТОРЯЙкаждый год, ПОКАлентяй не исправится:

«Каждый год он на лень свою злится:

Через год перестану лениться!»

   Начало 2-го цикла.

   ПОВТОРЯЙкаждый месяц:

   «Каждый месяц себе он клянется:

   Через месяц работа начнется!»

   Конец 2-го цикла.

Конец 1-го цикла.

– Теперь он каждое 1 января повторяет первую пару строчек и, кроме того, каждый месяц, скажем, каждое второе число, повторяет вторую строчку.

– А, понял, – подхватил Сережа, – это тоже не помогло, тогда он вписывает внутрь 2-го цикла третий, по дням. Будет еще каждый день перед сном обещать завтра начать новую жизнь. Здорово получается: пару строчек напишешь, а 365 раз будешь программу выполнять. Только все равно это не поможет, я пробовал. Чип, а что ты посоветуешь, как бороться с ленью? Правда, без шуток.

– Я знаю только один способ бороться с ленью: если ты начнешь делать свое дело хорошо, оно станет тебе интересно и ты будешь его делать с охотой. А если ты работаешь из-под палки, только чтобы отделаться, дело так и останется скучным и тебе будет лень. Сделай свою работу интересной, и лень пройдет. Вот мы с тобой играем, и нам не лень составлять программы, а если бы мы учились по учебнику, мы бы тоже, наверное, ленились.

ОТ РЕДАКЦИИ:

Сегодня Чип и Сережа предлагают вам забыть про лень и заняться таким делом. Представьте, когда часы бьют, из них выглядывают раз в час петух, а раз в час кукушка. А каждые 12 часов они появляются вместе и хвалят друг друга. Как составить программу для таких электронных часов?

Простой вариант программы: одна кукушка каждый час поет и каждые 12 часов танцует.

Лучшие программы мы напечатаем. Ждем ваших писем. На конверте укажите: «Кукушка и петух».

Приключения электронного мальчика с пальчик

– Знаешь, как меня назвала одна девочка в письме? – гордо сказал Чип в первое теплое майское воскресенье, когда они с Сережей устроились у раскрытого окна. – Ни за что не угадаешь! Электронный мальчик с пальчик, вот как.

– И прекрасно, – подхватил Сережа, – расскажи мне сказку про современного электронного мальчика с пальчик, вроде сказок для роботов Лема.

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

– В некотором вычислительном центре, в некотором машинном зале жил да был маленький Чип. Он был самым младшим в семье. Шестеро его старших братьев и его родители день и ночь гнули спину на своего хозяина – Центрального Процессора. Работа перепадала и Чипу, да какой с маленького прок! Поздно вечером, когда работы было поменьше, родители ворчали: «Одна морока с этими малышами, все приходится за них доделывать, без них было легче».

И вот как-то ночью Чип услышал, что родители сговариваются завести его с братьями в Лес Неправильных Программ да там и оставить. А это был страшный лес, там на каждом шагу подстерегали опасности: то бесконечный цикл закрутит, засосет, и не вырвешься; то Двоичное дерево своими ветками-рогатками запутает, затянет – начнешь их обходить и сгинешь без следа, только тебя и видели.

Но страшнее всего в том лесу был огромный великан Гигабайт. Сидел он в своей Директории, окруженный верными слугами – Дисководами, и поджидал неосторожных путников. Ему сотню бит проглотить, как муху, – даже и не заметит. Вот к нему-то и привели братьев жестокие родители.

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

– Эй, мелюзга, видите эти весы? – Он показал на огромные весы с коромыслом и двумя чашками. – Если догадаетесь, как найти самого легкого, не больше шести раз сравнивая вас друг с другом на этих весах, то этого самого легкого я отпущу.

Братья призадумались. Конечно, самый легкий – маленький Чип, но это нужно доказать, всего шесть раз сравнивая братьев друг с другом. Если бы можно было начать с Чипа, то, конечно, шесть раз сравнив его с остальными, можно доказать, что он самый легкий. Но коварный Гигабайт не станет их слушать, начнет с кого захочет и все шесть раз истратит на то, чтобы проверить, что он не самый легкий.

И вдруг маленький Чип звонко крикнул: «Я знаю, я знаю! Только ты не обманешь, отпустишь самого легкого?»

Великан расхохотался.

– Эту загадку не смогли решить уважаемые процессоры на радиолампах, не смогли решить их заслуженные ученики на полупроводниках, а ты, малявка, и подавно не сможешь!

– Ну, а все-таки, – малыш не унимался, – если решу, то отпустишь?

– Да я вас всех отпущу и в дорогу провожатого дам, только, ха-ха, вернее всего, вам дорога будет в котел.

– Ну смотри, Гигабайт, все слышали твое обещание, так чтобы потом тебе обманщиком не прослыть.

Великан побагровел, топнул ногой и взревел:

– Клянусь великим Винером {1} , этот мальчишка выведет меня из себя! Я от своих слов не отступаюсь, я за всю жизнь ни бита неправды не сказал. А ну-ка давай выкладывай свой алгоритм, пока я тебя...

– Итак, слушай, – спокойно сказал маленький Чип. – Берешь первого попавшегося и временно объявляешь его самым легким, а потом по очереди сравниваешь остальных с самым легким. При этом ты после каждого сравнения временно называешь самым легкимтого, кто на этот раз оказался легче.

– Ну-ка, постой, – перебил его великан, – ты мне что-то голову заморочил, я так не понимаю. Давай-ка проверим! – Он схватил двух самых больших братьев и бросил на весы. – Так, этот вроде немного полегче, объявляем его временно самым легким. – Он схватил еще одного из старших братьев. – Ага, этот еще легче, значит, теперь его временно объявляем самым легким. – Он схватил следующего. – А этот тяжелее, значит, самым легким остается предыдущий. – Четвертый раз сравниваем вот с этим, ага, прежний остался самым легким, и... вот ты, мелюзга, оказываешься самым легким. Хм... действительно, за шесть раз нашел. Это, наверно, случайно так получилось – попробуем в другом порядке сравнивать... так... так, опять за шесть раз этот малыш самым легким оказался!

– Ну как, отпускаешь? – весело спросил младший брат.

Великан насупился.

– Я одного обещал отпустить и свое слово сдержу. Иди и помни мою доброту.

– А мои братья? – закричал возмущенный Чип. – Ты их тоже обещал отпустить: провожатого можешь не давать!

– Это ты случайно задачу решил, – возразил Гигабайт. – Вот докажи, что ты на самом деле умный, – найди еще один такой алгоритм, и я отпущу еще одного брата...

Чип прервал свой рассказ и хитро посмотрел на Сережу.

– Ну и как ты думаешь, удалось электронному мальчику с пальчик спасти всех братьев? Составил он еще 6 алгоритмов, как найти самого легкого из 7, шесть раз сравнивая всех попарно на весах? Подскажу тебе, что братьев можно разбить на группы: по двое, по трое и так далее и сначала находить самого легкого в каждой группе, а потом уже сравнивать их между собой.

– Погоди, – спохватился Сережа, – ты же мне не объяснил, что такое алгоритм. Это что, правило взвешивания?

– В этом случае это правило взвешивания, а вообще – такой порядок действий, который всегдаприводит к желаемому результату.

ОТ РЕДАКЦИИ.

Ребята, поможем электронному мальчику с пальчик спасти своих братьев. Напишите нам, кто нашел все 6 алгоритмов, как выбрать самого легкого из семи братьев. На конверте укажите: «Мальчик с пальчик».


    Ваша оценка произведения:

Популярные книги за неделю