Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Флейм (http://www.flasher.ru/forum/forumdisplay.php?f=53)
-   -   Минимальный код,печатающий свой листинг (http://www.flasher.ru/forum/showthread.php?t=211691)

undefined 16.10.2015 15:26

Минимальный код,печатающий свой листинг
 
Слышал о такой задаче, якобы предлагаемой на собеседованиях:
Написать минимальный код,печатающий сам себя в консоль или куда-то еще.Операции с файловой структурой и чтение кода откуда-то из памяти запрещены.Размышляя, постоянно ухожу в бесконечную рекурсию с вылетом stack overflow и плавлением мозга.Кто знает, подскажите хоть одно решение.

illuzor 16.10.2015 15:29

http://habrahabr.ru/post/128191/

undefined 16.10.2015 15:39

illuzor, благодарю

illuzor 16.10.2015 16:09

Цитата:

Сообщение от undefined (Сообщение 1188094)
illuzor, благодарю

Меня то за что? Гугл благодарите.

undefined 16.10.2015 16:54

Цитата:

Меня то за что? Гугл благодарите.
За слово "квайн"

caseyryan 16.10.2015 20:04

Что-то я не понял прикола. Я ожидал, что там будет какой-то "чудо" код который реально выведет сам себя в аутпут. А в итоге увидел банальную строку, которую надо написать руками. Хрень какая-то. Так любой ламер сможет

MikroAcse 16.10.2015 20:12

Цитата:

Что-то я не понял прикола. Я ожидал, что там будет какой-то "чудо" код который реально выведет сам себя в аутпут. А в итоге увидел банальную строку, которую надо написать руками. Хрень какая-то. Так любой ламер сможет
У меня то же самое ощущение. Ожидал увидеть какую-то операцию с памятью, которая вытягивает байт-код и превращает его в код с помощью декомпиляции :D

Bletraut 17.10.2015 14:53

Вот именно, да и к тому же там написано, что все изменения в программе вы должны записывать в строку. Так почему бы тогда просто в строку S, код программы не писать. Тупость.

GBee 17.10.2015 18:08

Цитата:

Так почему бы тогда просто в строку S, код программы не писать. Тупость.
А вы попробуйте объявить строковую переменную и записать в нее объявление и значение, которое должно входить в объявление внутри значения ну и так далее. + Строка должна содержать кавычки, в которые она заключена

caseyryan 17.10.2015 18:35

Цитата:

Сообщение от GBee (Сообщение 1188121)
А вы попробуйте объявить строковую переменную и записать в нее объявление и значение, которое должно входить в объявление внутри значения ну и так далее. + Строка должна содержать кавычки, в которые она заключена

Да это делается на раз два, простым экранированием кавычек.
Я так писал генератор классов для редактора локаций в одной игре. Просто не знал что это квайном называется)


Часовой пояс GMT +4, время: 20:52.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.