Dakle program koji će kada se pokrene da ispiše svoj kod.
Napisite u Pascalu najkraci program koji ce sam sebe da ispiše
Zaključano
Zakačeno
Paskal se kompajlira i nema sanse da izvrsni kod moze da u sebi pronadje Pascal sors.
Evo ga:
Pascal quine je davno provaljen i mislim da ne moze da se napiše kraći od ovoga:
Doduše, ima jedna stvar kod njega. Izlaz nije potpuno identičan ulazu, jer će se izlaz prelomiti na 80-om karakteru.
Pascal quine koji potpuno odgovara zadatku je ovaj:
Kod njega je izlaz 100% identičan ulazu.
Naravno kompajlirati sa dcc32 -CC da bi izbegli potrebu za {$APPTYPE CONSOLE} u Delphiju.
I kakve sad veze ima kompaliranje sa ulaznim kodom i izlazom programa? :)
Code:
const a=';begin write(^#^/^.^3^4^`^!^}#39,a,#39,a)end.';begin write(^#^/^.^3^4^`^!^}#39,a,#39,a)end.
const a=';begin write(^#^/^.^3^4^`^!^}#39,a,#39,a)end.';begin write(^#^/^.^3^4^`^!^}#39,a,#39,a)end.
Doduše, ima jedna stvar kod njega. Izlaz nije potpuno identičan ulazu, jer će se izlaz prelomiti na 80-om karakteru.
Pascal quine koji potpuno odgovara zadatku je ovaj:
Code:
const a='const a=';b='begin write(a,#39,a,#39#59#98#61#39,b,#39#59#10,b) end.';
begin write(a,#39,a,#39#59#98#61#39,b,#39#59#10,b) end.
const a='const a=';b='begin write(a,#39,a,#39#59#98#61#39,b,#39#59#10,b) end.';
begin write(a,#39,a,#39#59#98#61#39,b,#39#59#10,b) end.
Kod njega je izlaz 100% identičan ulazu.
Naravno kompajlirati sa dcc32 -CC da bi izbegli potrebu za {$APPTYPE CONSOLE} u Delphiju.
I kakve sad veze ima kompaliranje sa ulaznim kodom i izlazom programa? :)
Potpis
viking ®
svaka cast...
moje resenje je bilo ovakvo
const s='const s=;begin write(copy(s,1,8),#39,s,#39,copy(s,9,99))end.';begin write(copy(s,1,8),#39,s,#39,copy(s,9,99))end.
ali je svakako ovo prvo krace, dakle bolje!!
moje resenje je bilo ovakvo
const s='const s=;begin write(copy(s,1,8),#39,s,#39,copy(s,9,99))end.';begin write(copy(s,1,8),#39,s,#39,copy(s,9,99))end.
ali je svakako ovo prvo krace, dakle bolje!!
Ne znam dal mislim na isto, ali mozda ovo moze nesto da znaci:
Snimite vas fajl kao srccode.pas (ili kako god zelite ali onda u Assign morate da promenite ime fajla...)
Pozdrav
Snimite vas fajl kao srccode.pas (ili kako god zelite ali onda u Assign morate da promenite ime fajla...)
Code:
var
f: Text;
S: String;
begin
Assign(f, 'srccode.pas');
Reset(f);
repeat
readln(f, S);
writeln(S);
until EOF(f);
end.
var
f: Text;
S: String;
begin
Assign(f, 'srccode.pas');
Reset(f);
repeat
readln(f, S);
writeln(S);
until EOF(f);
end.
Pozdrav
Nije u tome poenta - quine je program koji će reprodukovati svoj izvorni kod kao izlaz bez ikakvih drugih datoteka.