для программистов на С
-
Jhony
надо написать прогу, которая печатает на экране собственный текст (ес-но запрещено обращаться к диску, памяти и т.д.) на C++
ББ. если тема сюда не вписывается можешь создать отдел форума для программистов...
ББ. если тема сюда не вписывается можешь создать отдел форума для программистов...
Вот есть Hard-n-Soft. Сюда и перемещаю.
Насчет сабжа – в инете поискать не пробовал?
Должно быть такое.
Насчет сабжа – в инете поискать не пробовал?
Должно быть такое.
-
Bambor
- R.I.P.
denis уже писал сюда пример такой проги на паскале или на бейсике, поищи в старых темах форума
> надо написать прогу, которая печатает на экране собственный текст (ес-но запрещено
> обращаться к диску, памяти и т.д.) на C++
>
>
Это тебе в институте задали?
> обращаться к диску, памяти и т.д.) на C++
>
>
Это тебе в институте задали?
-
Wolf
Подобного рода задачи, что на Паскаля, что на Бейсике, что на Си решаются фактически одинаково. По причине того что при использовании оператора вывода (для С если не ошибаюсь printf) внутри у него надо писать кусок кода программы. Тогда вылазит вопрос, а какже напечатать printf который выводит этот кусок, ведь он тоже является куском кода. Пишется код для вывода массива на экран, т.е. обычный цикл. После чего, выше только что написанного вывода массива, описывается сам массив. А вот тут начинается самое интересное. В массиве пишешь весь код программы от начала, до конца. Естественно содержимое массива туда не включаешь. После чего заводишь еще одну переменную в которой у тебя идет номер ячейки с которой начинается вторая часть программы (после значений массива). При выводе в цикле сначала крутишь массив до этой ячейки потом вытаскиваешь значения из массива (с самого начала), а продолжаешь снова от этой ячейки. Т.к. мелькают такие вещи как кавычки и запятые, текст проги в массиве рекомендую писать в шестнадцатиричном виде. Переводить в шестнадцатиричный вид конечно лень, но в результате получится то что хотел. Если чего не понятно стучись на Асю.
-
Simik
Код: Выделить всё
char *f="char *f=%c%s%c;%c#define Q '%c'%c#define N '%cn'%c#define B '%c%c'%c#include <stdio.h>%cvoid main(){printf(f,Q,f,Q,N,Q,N,B,N,B,B,N,N,N);}%c";
#define Q '"'
#define N '\n'
#define B '\\'
#include <stdio.h>
void main(){printf(f,Q,f,Q,N,Q,N,B,N,B,B,N,N,N);}Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей