693
правки
Изменения
Квайны
,→Мультиквайны
}}
{{Определение
|definition='''<tex>R</tex>-квайном''' (англ. <tex>R</tex>-''quine'') называется программа, способная вывести исходный код <tex>R-1</tex> программ на других языках программирования в зависимости от переданного ей аргумента, а так же также свой исходный код при вызове без аргументов.
}}
Заметим, что требование, чтобы программы были на разных языках программирования важно, т.к. иначе все программы смогут иметь один и тот же код.
Теорема
|about=о существовании мультиквайнов
|statement= На любом языке программирования можно написать мультиквайн.
|proof= Докажем утверждение для биквайна, для большего количества языков доказательство будет выглядеть аналогично.
===Принцип написания===
Будем следовать доказательству и напишем мульти-квайн мультиквайн для двух языков. Далее покажем, как добавить новый язык.* напишем для каждого языка "полу-квайнполуквайн":
<table>
<tr>
'''print'''(getSrc())
</font></code>
Две оставшиеся программы будут выглядеть аналогично, и смогут быть получены путём запуска третьей с каждым из возможных аргументов.
== Примечания ==