возможно ли написать программу, которая печатает свой собственный исходный код, используя «функцию генерации последовательности»?Можно ли написать программу, которая печатает свой собственный исходный код, используя «функцию генерации последовательности»
То, что я называю функцией генерации последовательности, является просто функцией, которая возвращает значение из определенного интервала (то есть печатаемых ascii-charecters (32-126)). теперь дело в том, что эта сгенерированная последовательность должна быть программным исходным кодом. как вы видите, реализация функции, которая возвращает произвольную последовательность, действительно тривиальна, но поскольку возвращаемая последовательность должна содержать реализацию самой функции, это очень нетривиальная задача.
это как такая программа (и его соответствующий выход) может выглядеть следующим образом
#include <stdio.h>
int fun(int x) {
ins1;
ins2;
ins3;
.
.
.
return y;
}
int main(void) {
int i;
for (i=0; i<size of the program; i++) {
printf("%c", fun(i));
}
return 0;
}
я лично считаю, что это не представляется возможным, но так как я не очень много знаю об основной материи я разместил мои мысли здесь. Я очень рад услышать некоторые мнения!
Проверьте код, который я разместил ниже. Это то, что вы хотите? Я не уверен на 100%, каковы ваши правила. – sigfpe