Навигация

• Онлайн: 2

qr_code



Рейтинг@Mail.ru

Индекс цитирования

Яндекс
creation/prograf/skaz.txt · Последнее изменение: 08.02.2025 17:41 — nozdr

Сказка о том, как я за ёлками ходил

"Ох уж эти сказочки...
Ох уж эти сказочники..."


Точно не скажешь, но давненько это было… Ещё в староглиняные времена, в одной пластилиновой местности… Нет, не так. В те далекие времена, когда транспортом служили гужевые повозки… Или не… Собрались как то раз друзья на охоту, зашли в лес, а там… Или так: (мрачно) «Одна кружка была навечно прикована…» Не, снова не то.

Сидел я как-то в школе на скучном уроке… Во!

Цифровые кружева

Итак, сидел я как-то в школе на скучном уроке и от нечего делать пробовал на бумажке в клеточку раскрашивать квадратики. Правила раскраски придумал такие:

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

Начал я с пустого листа, и получилась вот такая занятная картинка:

Мне она показалась лесом из перевёрнутых ёлок :)

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

Ну вот зелёненькие, ну похоже же на лес из ёлок? Похоже ведь… Не?.. Или всё же кружева?.. Ну да бог с ними, получались в общем интересные картинки.

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

И напоминало это скорее геометрическую резьбу:

Помню, что пробовал по-разному хитрым образом раскрашивать треугольники и «дорожки», которые между ними проходят, и это давало совершенно новый эффект – лес из ёлок пропадал, а появлялись антенны, направленные в космос!

После того скучного урока я несколько раз (на других таких же скучных уроках) возвращался к этой теме и отправлялся за ёлками и антеннами, а также плёл кружева. Как сейчас помню, были мысли попробовать использовать не только 0 и 1, а больше цифр, и каждую цифру раскрашивать своим цветом.

С 0, 1 и 2 тогда не очень удачно получилось, поэтому продолжать изыскания в этом направлении не стал, ибо всё сводилось снова к двум цифрам и повторяло бинарную раскладку 0100100100…

Наверное, надо было сделать правило, чтобы было 2+2=0, тогда получилось бы что-то типа такого:

Тоже, в общем-то, неплохо, можно и поэкспериментировать.

Как я узнал чуть позже, моё самое первое правило 0+0=1+1=1 0+1=1+0=0, задуманное при раскрашивании ячеек, называлось логической равнозначностью или эквиваленцией (эквивалентностью). И оказывается, всяких таких правил, по которым с двоичными цифрами можно что-то делать, в логике и математике существует довольно много.

Таблица истинности логических операций

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

А пока я вам хочу сказать, что даже при применении одного простейшего правила к изначально пустому пространству, можно получить очень красивые закономерности. Здесь, кстати, можно вспомнить пару великолепных «игр» – «Жизнь» Джона Хортона Конуэя и «Воспроизведение» Станислава Улама.

Игра "Воспроизведение" Станислава Улама

Простор для опытов с другими правилами и исходными данными – огромный, так что флаг вам в руки, как говорится, и барабан на шею.

«На том и кончилась сказка. А вот теперь начинается чистая правда.»

В общем, надо будет попробовать всё это сделать, чтобы, как говорится, закрыть гештальт. Так что «как царём, значит, заделаюсь — первым делом, первым делом… чё первым делом? А, пианину! А то сто это за зызнь, без пианины?..»

Пианина

Первой моей пианиной были бинарные часы.

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

В основе двоичной системы лежит двоичный код, то есть возможность записывать числа при помощи двух различных знаков. Но двоичный код – это совсем не то же самое, что и двоичная система счисления. В двоичной системе числа записываются при помощи знаков 0 и 1 в порядке возрастания: 0,1,10,11,100,101,110,111,1000,1001… Графически её можно изобразить вот так:

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

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

Такое определение было точным, но неоднозначным. Народ стал это дело осмысливать и насоздавал кучу бинарных кодов, подходящих под определение Грэя. Получился не один код, а прям целое их семейство. Изначально предложенный код Грэя стали называть зеркальным кодом Грэя, а остальные по именам авторов, их предложивших.

Вот как выглядят визуально некоторые из этих кодов:

Одни из этих картинок напомнили шагающие пушки из звёздных войн, другие каких-то ископаемых слонов, третьи – уток с утятами или страусов. Фантазия – она такая, забористая…

«Ну, дворец! Ну, хорош! С лебедями! С чучелами!» В общем, классные получались то ли паровозики, то ли машинки, то ли слоники. Ну а если их нарисовать подлиннее и поставить вертикально, то вырастал целый лес разных по конструкции ёлок! И стал я с этими кодами играться. Помню, что написал на бейсике программу для ПК Вектор-06Ц, где зеркально отражал эти картинки и получались многоступенчатые ракеты и деревья разной формы. Но пока я эту прогу не нашёл. Если не найду – новую напишу. Но попозже :)

Ещё я параллельно пытался рисовать пути, которыми можно соединить узлы получающихся картинок. Если отразить по вертикали получающиеся пути, то получались прям натуральные ёлочки!

На базе этих моих наработок уже много лет позже мне пришло в голову сделать Бинарный календарь из двоичных ёлочек:

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

Помнится, после всех этих паровозиков, ракет и деревьев я даже начал играться с троичной системой счисления. Но это уже будет совсем другая сказка. Как и сказка про путь к звёздам, которую я только планирую написать…

Короче, «он и в третий раз ходил за ёлкой, и добыл её… Но это было уже весной, и он отнёс ёлку обратно.»

Мораль сказки такая: чем бы дитя не тешилось, лишь бы не вешалось. Если есть свободное время, склонные к математике и программированию мозги и тяга к творчеству, то можно порисовать бинарные ёлочки :) И не обязательно использовать для этого компьютер, достаточно бумажки в клеточку и карандаша. А уж если привлечь компьюююютер… Эхх! Короче, всех с Новым годом!


Инструменты страницы

Инструменты пользователя