Рубрики

Quine — Самовоспроизводящаяся программа

Quine — это программа, которая печатает собственную копию как единственный выход. Куайн не требует ввода. Куайны названы в честь американского математика и логика Уилларда Ван Ормана Куайна (1908–2000). Интересно то, что вы не можете использовать открыть и затем распечатать файл программы.

Насколько нам известно, ниже приведена самая короткая квина в C.

main() { char *s="main() { char *s=%c%s%c; printf(s,34,s,34); }"; printf(s,34,s,34); } 

Эта программа использует функцию printf без включения соответствующего заголовка (#include), что может привести к неопределенному поведению. Кроме того, объявление типа возврата для main было оставлено, чтобы уменьшить длину программы. Два 34 используются для печати двойных кавычек вокруг строки s.

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

main(a){printf(a="main(a){printf(a=%c%s%c,34,a,34);}",34,a,34);}

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

Куайн в Python

Источник:
http://en.wikipedia.org/wiki/Quine_%28computing%29

Рекомендуемые посты:

Quine — Самовоспроизводящаяся программа

0.00 (0%) 0 votes