Править конями ты первый; зато мне далося искусство
Счета»…
И в доказательство своего искусства царь мгновенно сосчитал число листьев на ветвистой Вибитаке. Изумленный Наль просит Ритуперна открыть ему тайну его искусства, и царь соглашается.
…Лишь только
Вымолвил слово свое Ритуперн, как у Наля открылись
Очи, и он все ветки, плоды и листья Вибитаки
Разом мог перечесть…
Секрет искусства состоял, как можно догадаться, в том, что непосредственный счет листьев, требующий много времени и терпения, заменялся счетом листьев одной лишь ветки и умножением этого числа на число веток каждого сука и далее на число сучьев дерева (предполагая, что сучья одинаково обросли ветками, а ветки – листьями). Обыкновенное действие умножения казалось незнакомому с ним человеку чем-то загадочным, сверхъестественным.
Разгадка большинства арифметических фокусов столь же проста, как и секрет «фокуса» царя Ритуперна.
Стоит лишь узнать, в чем разгадка фокуса, и вы сразу овладеваете искусством его выполнять, как овладел легендарный Наль изумительным искусством быстрого счета. В основе каждого арифметического фокуса лежит какая-нибудь интересная особенность чисел, и потому знакомство с подобными фокусами не менее поучительно, чем занимательно.
Фокусник вынимает стопку из 300 денежных знаков, по 1 рублю каждый, и предлагает вам разложить деньги в 9 конвертах так, чтобы вы могли уплатить ими любую сумму до 300 рублей, не вскрывая ни одного конверта.
Задача представляется вам совершенно невыполнимой. Вы готовы уже думать, что фокусник просто желает поймать вас на недогадливости, что тут дело кроется в какой-нибудь коварной игре слов или неожиданном толковании их смысла. Но вот фокусник, видя вашу беспомощность, сам раскладывает деньги по конвертам, заклеивает их и предлагает вам назвать любую сумму в пределах трехсот рублей.
Вы называете наугад первое попавшееся число – 269.
Фокусник без малейшего промедления подает вам 4 заклеенных конверта. Вы вскрываете их и находите:
Теперь вы склонны заподозрить фокусника в искусной подмене конвертов и требуете повторения опыта. Фокусник спокойно кладет деньги обратно в конверты, заклеивает и оставляет их на этот раз уже в ваших руках. Вы называете новое число, например 100, или 7, или 293 – и фокусник моментально указывает, какие из лежащих у вас под руками конвертов вы должны взять, чтобы составить требуемую сумму (в первом случае, для 100 р. – 4 конверта, во втором, для 7 р. – 3 конверта, в третьем, для 293 р. – 6 конвертов).
Это представляется чем-то непостижимым; но, прочтя ближайшие полстраницы, вы сможете повторить тот же фокус и изумлять других, еще не посвященных в его секрет. А секрет этот кроется в том, чтобы разложить деньги в следующие стопки: 1 р., 2 р., 4 р., 8 р., 16 р., 32 р., 64 р., 128 р. и, наконец, в последней – остальные рубли, т. е.
300-(1 + 2+ 4 +8 + 16 + 32 + 64+ 128) = 300–255 = 45.
Из первых 8 конвертов возможно, как нетрудно убедиться, составить любую сумму от 1 до 255; если же задается число большее, то пускают в дело последний конверт, с 45 рублями, а разницу составляют из первых восьми конвертов.
Вы можете проверить пригодность такой группировки чисел многочисленными пробами и убедиться, что из них можно действительно составить всякое число, не превышающее 300. Но вас, вероятно, интересует и то, почему собственно ряд чисел 1,2,4, 8,16, 32, 64 и т. д. обладает столь замечательным свойством. Это нетрудно понять, если вспомнить, что числа нашего ряда представляют степени двух: 21, 22, 23, 24 и т. д. [26], и, следовательно, их можно рассматривать как разряды двоичной системы счисления. Атак как всякое число можно написать по двоичной системе, то, значит, и всякое число возможно составить из суммы степеней двух, т. е. из чисел ряда 1, 2, 4, 8, 16 и т. д. И когда вы подбираете конверты, чтобы составить из их содержимого заданное число, вы, в сущности, выражаете заданное число в двоичной системе счисления. Например, число 100 мы легко сможем составить, если изобразим его в двоичной системе:
(Напомним, что в двоичной системе на первом месте справа стоят единицы, на втором – двойки, на третьем – четверки, на четвертом – восьмерки и т. д.)
Угадать число спичек в коробке
Тем же свойством двоичной системы счисления можно воспользоваться и для следующего фокуса. Вы предлагаете кому-нибудь взять неполную коробку со спичками, положить ее на стол, а ниже ее положить один за другим 8 бумажных квадратиков. Затем просите в вашем отсутствии проделать следующее: оставив половину спичек в коробке, перенести другую половину на ближайшую бумажку; если число спичек нечетное, то излишнюю спичку положить рядом с бумажкой, налево от нее. Спички, очутившиеся на бумажке, надо (не трогая лежащей рядом) разделить на две равные части: одну половину положить в коробку, другую – переложить на следующую бумажку; в случае нечетного числа остающуюся спичку положить рядом со второй бумажкой. Далее поступать таким же образом, всякий раз возвращая половину спичек обратно в коробку, а другую половину перекладывая на следующую бумажку, не забывая, при нечетном числе спичек, класть одну спичку рядом. В конце концов все спички, кроме одиночных, лежащих рядом с бумажками, возвратятся в коробку.
Когда это сделано, вы являетесь в комнату и, бросив взгляд на пустые бумажки, называете число спичек во взятой коробке.
Этот фокус обыкновенно сильно изумляет непосвященных: кажется совершенно непонятным, как можно по пустым бумажкам и случайным единичным спичкам догадаться о первоначальном числе спичек в коробке. В действительности же «пустые» бумажки в данном случае очень красноречивы: по ним и по одиночным спичкам можно буквально прочесть искомое число, потому что оно написано на столе – в двоичной системе счисления. Поясним это на примере. Пусть число спичек в коробке было 66. Последовательные операции с ними и окончательный вид бумажек показаны на следующих схемах:
Итого……..66.
Не нужно большой проницательности, чтобы сообразить, что проделанные со спичками операции, в сущности, те же самые, какие мы выполнили бы, если бы хотели выразить число спичек в коробке по двоичной системе счисления; окончательная же схема прямо изображает это число в двоичной системе, если пустые бумажки принять за нули, а бумажки, отмеченные сбоку спичкой, – за единицы. Читая схему снизу вверх, получаем