gifts2017

Куайн (Программа, выводящая свой исходный код на экран)

Опубликовал Рамиз Бахтиев (atridis) в раздел Программирование - Практика программирования

Обработка позволяет насладится реализацией этой интересной, и совершенно бесполезной с практической точки зрения задачей.
Куайн, квайн (англ. quine) — компьютерная программа, которая выдаёт на выходе точную копию своего исходного текста.

Как квайн выглядит в других языках можно посмотреть тут: Квайн (вики).

Реализация:
&НаКлиенте Процедура Выполнись(Команда)
А="Текст=В+Символ(10)+Символ(1040)+Символ(61)+Символ(34)+А+Символ(34)+Символ(59)+Символ(10)+Символ(1041)+Символ(61)+Символ(34)+Б+Символ(34)+Символ(59)+Символ(10)+Символ(1042)+Символ(61)+Символ(34)+В+Символ(34)+Символ(59)+Символ(10)+Символ(1043)+Символ(61)+Символ(34)+Г+Символ(34)+Символ(59)+Символ(10)+Б+Символ(40)+Символ(1040)+Символ(41)+Символ(59)+Символ(10)+Г";
Б="Выполнить";
В="&НаКлиенте Процедура Выполнись(Команда) ";
Г="КонецПроцедуры";
Выполнить(А);
КонецПроцедуры




Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Квайн.epf
.epf 5,91Kb
26.08.14
0
.epf 5,91Kb 0 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Дмитрий Башинский (bashinsky) 26.08.14 09:42
У вас строка
Г="КонецПроцедуры";
не попала в результат
2. Анатолий Бычин (tolyan_ekb) 26.08.14 08:16
(1) bashinsky, она попала, но без "Г=".
3. Рамиз Бахтиев (atridis) 26.08.14 11:14
(1) bashinsky, совершенно верно, поправлено
4. Сергей (ildarovich) 26.08.14 11:18
Здесь уже было решение этой задачи
http://infostart.ru/public/87861/
В комментарии http://forum.infostart.ru/forum24/topic40903/message439485/#message439485
к той статье приведено самое короткое решение:
Процедура КВН(К)С="Процедура КВН(К)С="";Л=Лев(С,19);П=Сред(С,19);Сообщить(Л+Л+П+П)КонецПроцедуры";Л=Лев(С,19);П=Сред(С,19);Сообщить(Л+Л+П+П)КонецПроцедуры
veretennikoff; Патриот; DrAku1a; +3 Ответить 1
5. Булат Шаймарданов (mrbus) 31.10.16 22:11
(4) ildarovich, использование "Выполнить" не является "честным" квайном. Вот пример квайна http://govnokod.ru/21614
6. Сергей (ildarovich) 01.11.16 12:11
(5) Это замечание не ко мне. В моем варианте "Выполнить" нет.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа