В связи с началом акции по зачистке статей от мусора мы еще раз напоминаем: перед тем, как начинать редактировать статьи, крайне желательно ознакомиться с руководством по редактированию — особенно с той его частью, что касается использования тэгов ref и strike. И потом не говорите, что вас не предупреждали.
Рекурсия
Материал из Lurkmore.
| | Анонимус! Альтернативное мнение также имеется в смехуечках. |
Рекурсия — см. «Рекурсия».
Рекурсией в программировании называется вызов функцией самой себя прямо (в теле функции расположен вызов себя) или косвенно (функция вызывает функцию, которая вызывает функцию, которая… и в одной из этих функций расположен вызов самой первой функции). Типичным примером функций, использующих рекурсию, являются вычисление факториала и функция Аккермана. В более общем смысле, включение некоторой сущностью самой себя целиком (см. пример с зеркалами ниже).
Помимо своего матанского и программистского значения, рекурсия — мем, используемый в наших интернетах в основном среди читателей башорга. Более сложный вариант без гиперссылок: «Чтобы понять рекурсию, нужно сперва понять рекурсию».
Содержание |
Наблюдение рекурсии
Если вам внезапно нечем будет себя занять, то можете вживую понаблюдать за рекурсией воспользовавшишь представленными ниже приёмами.
- Если у вас есть веб-камера, то сделайте так чтобы изображение с неё выводилось на экран и направьте камеру прямо в монитор — это и будет она.
- Тот же самый спецэффект можно получить и с меньшим бюджетом воспользовавшись программой записи видео с экрана (или программой-лупой).
- Если и этого нет под рукой, то подобную рекурсию можете произвести вручную. Откройте любой графический редактор (например, тот же Paint) и с детским задором высунув язык без остановки поочерёдно жмакайте на клавиатуре Print Screen и Ctrl+V.
IRL же, визуальную рекурсию можно легко получить встав между двух стоящих друг напротив друга зеркал. Например, в коридоре вагона поезда.
Примеры
- «Установите драйвера для CD-ROM, находищиеся на нашем компакт-диске».
- «Для выхода в Интернет скачайте из Интернета нашу программу».
- winrar_setup.rar
- «Keyboard not found. Press anykey to continue».
Рекурсия в кино
- В фильме «12 друзей Оушена» представлен интересный пример рекурсии: Джулия Робертс сыграла героиню, которая по сюжету фильма некоторое время играла Джулию Робертс.
- В этом вашем Хаусе в конце втрого сезона Хаус видит галлюцинацию, в которой он в свою очередь тоже видит галлюцинацию. Кто смотрел, поймет.
Простейший пример рекурсии в диалоге
|
1: Я подумаю. Иди потролль кого-нибудь. 2: Я подумаю. Иди потролль кого-нибудь. |
Из жизни братьев наших меньших
- Хаскель состоит из рекурсии чуть менее, чем полностью.
- Scheme же состоит из рекурсии чуть более, чем полностью.
- Реакция на слово «рекурсия» типичного ПеХаПе-программиста.
Рекурсия в законодательстве
Из инструкции ФАПСИ от 13 июня 2001 года N 152:
- реализующие криптографические алгоритмы преобразования информации, аппаратные, программные и аппаратно-программные средства, системы и комплексы, обеспечивающие безопасность информации при ее обработке, хранении и передаче по каналам связи включая СКЗИ; |
| — http://www.parfenov.ru/base/min-ved/prochee/dir48/ |
В музыке
(link)
Рекурсивный клип- Известный хит Deep Purple «Smoke On The Water» повествует нам о сгоревшем здании, в котором должен был записываться альбом, на который вошла песня, повествующая…
- Ирландский расовый Bog down in the valley.
- Верный пример рекурсии из этого вашего Сплина:
|
И мудрец сошел с ума, набрал 01, И по вызову явился незнакомый господин И господин сошел с ума, набрал 01, И по вызову явился незнакомый господин И господин сошел с ума, набрал 01, И по вызову явился незнакомый господин, И господин сказал..." В последней строке мы наблюдаем выход из рекурсии. |
- Ещё такая детская песенка:
|
У попа была собака, Он её любил. Она съела кусок мяса, Он её убил. И в землю закопал, И надпись написал, что... |
- Незабвенная «Put The Lime In The Coconut»
В работе
|
Требуется расклейщик объявлений для расклейки объявлений о приеме на работу расклейщиков объявлений. |
В армии
|
Бой — это единственное средство достижения победы в бою! |
|
Бомба всегда падает в эпицентр. |
На кухне
|
Салат «рекурсивный»: помидоры, огурцы, салат… |
| — |
Рекурсивные акронимы
Про PHP
|
|---|
| PHP — от англ. Personal Home Page — личная домашняя страничка. Так-то!
В последствии для пущей солидности была изобретена другая интерпретация: PHP: Hypertext Preprocessor. Она содержит рекурсию вовсе не потому, что PHP разработчики любят рекурсию, а скорее потому, что подогнать нормальный акроним к имеющимся буквам было весьма затруднительно. |
Про PNG
|
|---|
| Официально PNG — Portable Network Graphics.
Однако, формат создавался как альтернатива патентнотрольскому GIF, поэтому на самом деле верна неофициальная интерпретация. |
Бородатые линуксойды обожают рекурсивные акронимы.
- GNU — GNU is not unix
- WINE — WINE is not an emulator
- PINE — PINE is not elm
- LAME — LAME Ain’t a MP3 Encoder
- PHP — PHP Hypertext Preprocessor
- Gajim — Gajim is a jabber instant messenger
- PNG — PNG is Not GIF
Внезапно:
- VISA — Visa International Service Association
В программировании
- Простейший пример рекурсивной функции вычисляющей факториал на Common Lisp’е:
(defun fact(x)
(if (integerp x)
(if (= x 0)
1
(* x (fact (1- x))))))
Алсо
- Рекурсия в качестве источника лулзов — не столь новое изобретение. Цитата из книги английского математика Дж. Литлвуда «Mathematician’s miscellany», выпущеной в 1957 году:
|
Однажды научный журнал Spectator объявил среди читателей конкурс на тему «Что бы вы с наибольшим удовольствием прочли, раскрыв утреннюю газету?». Приз получил ответ: Наш второй конкурс. Первый приз во втором конкурсе этого года присуждён мистеру Артуру Робинсону, остроумный ответ которого без натяжки должен быть признан наилучшим. Его ответ на вопрос «Что бы вы с наибольшим удовольствием прочли, раскрыв утреннюю газету?» был озаглавлен «Наш второй конкурс», и состоял в следующем: «Первый приз во втором конкурсе этого года присуждён мистеру Артуру Робинсону, остроумный ответ которого без натяжки должен быть признан наилучшим. Его ответ на вопрос „Что бы вы с наибольшим удовольствием прочли, раскрыв утреннюю газету?“ был озаглавлен „Наш второй конкурс“, но из-за лимитирования бумаги мы не можем напечатать его полностью.» |
- Известно, что в системах с ограниченным объёмом оперативной памяти (компьютер, мозг быдла…) неограниченная или недостаточно ограниченная рекурсия может привести к stack overflow с малопредсказуемыми, но всегда неприятными последствиями.
- Логический парадокс «я лгу» косвенно относится к. Это так называемые автореферентные выражения.
- Простейший пример косвенной рекурсии — про бабочку и китайского философа Чжуан Цзы. Философ спит, и ему снится что он бабочка, которая спит и ей снится что она философ, который спит и ему снится что он бабочка, которая спит и ей снится… Аналогичный пример присутствует у Кэрролла в "Алисе в Зазеркалье": Алиса спит и видит во сне Чёрного Короля, который спит и видит во сне Алису, которая спит и видит Короля…
- Всем похуй, что всем похуй.
Ссылки
- Когда ищете в Гугле «рекурсия», убедитесь, что вы не перепутали её с рекурсией.
-
Неправильная цитата про рекурсию на башорге
- Правильная цитата про рекурсию на правильном башорге.
- Самое лаконичное определение рекурсии
- Пример рекурсии от Мицгола — «Я не собираюсь отвечать на вопрос анонимного участника о том, почему я не собираюсь отвечать на вопросы анонимных участников. Моё решение рекурсивно». (математически правильнее будет «рекуррентно»).
- Пример рекурсии от анимешницы — «Косплей — это когда по какому-нибудь аниме делают косплей.»
- Рекурсия от Cyanide and Happiness и ещё
- В иракского ботинкометателя метнули ботинок
См. также
| |
[ + ] Капитан заявляет: «Рекурсия имеет отношение к Башоргу. Так-то!».
|
||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||
| |
[ + ] Любой программист без словаря поймёт, что такое Рекурсия
|
||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||
Категории: Башорг | Языки программирования | Матан | Основы | Мемы Башорга | Матчасть


