[programming] Как не нужно писать проги!!!

tosha01

#include<stdio.h>
main(int t, int _, char *a)
{
return!0<t?t<3?
main(-79,-13,a+main(-87,1-_,main(-86,0,a+1)+a:1,t<_?main(t+1,_,a)
:3,main(-94,-27+t,a)&&t==2?_<13?main(2,_+1,"%s %d %d\n"):9:16:t<0?t<-72?
main(_,t,"@n'+,#'/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+,/n\
{n+,/+#n+,/#;#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!\
/+k#;q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!\
/n{n#'; r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#n'wk nw' iwk{KK{nl]!/\
w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;{nl'-{}rw]'/+,}##'*}\
#nc,',#nw]'/+kd'+e}+;#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!/")
:t<-50?_==*a?putchar(31[a]):
main(-65,_,a+1):
main*a=='/')+t,_,a+1):
0<t?main(2,2,"%s")
:*a=='/'||main(0,main(-61,*a,
"!ek;dc bK'(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry"
a+1);
}

bjo999

это которая в шахматы играет?
в фидошке подобное пролетало...
а между прочим, я так писал на олимпиадах, что б исходникам не прикапывались - пусть так тестят...

abrek

Ну и как, помогало?

tosha01

и как? много олимпиад выйграл?

bjo999

помогло...
один дядька не мог придумать к чему прикопаться в задаче - все тесты она прошла, залез в исходный код, увидел там цифру 100 в каком-то месте
и сказал, что моя программане сможет считать с цифрами больше 100 знаков (суть была как раз в обработке больших чисел)
и не смотря на то, что программа проходила все тесы, даже с 10000 знаками, он снял мне бал, хоть это никак и не повлияло....
выигранных олимпиад? чисто - одна - открытая олимпимда Молодые информатики сибири 99 - первое место
а так областные - 2-е

Elina74

А как этой прогой пользоваться? Откомпилить я ее откомпилил, а вот что с ней дальше делать?
Она пишет "On the" и чего-то ждет...

voronetskaya

она не ждет
она винт форматирует... по-тихоньку

Ivan8209

Предлагаю внести в ЧаВо:
http://ioccc.org/
---
( -*- mode: Fundamental; -*- )

gidral

У миня она выдала целую тираду типа "В первый день Рождества, ... , в двенадцатый день Рождества" (точно не помню, какую, это что-то типа перевода)
строчек на 50 наверное

Chupa



On the first day of Christmas my true love gave to me
a partridge in a pear tree.
On the second day of Christmas my true love gave to me
two turtle doves
and a partridge in a pear tree.
On the third day of Christmas my true love gave to me
three french hens, two turtle doves
and a partridge in a pear tree.
On the fourth day of Christmas my true love gave to me
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the fifth day of Christmas my true love gave to me
five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the sixth day of Christmas my true love gave to me
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the seventh day of Christmas my true love gave to me
seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the eigth day of Christmas my true love gave to me
eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the ninth day of Christmas my true love gave to me
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the tenth day of Christmas my true love gave to me
ten lords a-leaping,
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the eleventh day of Christmas my true love gave to me
eleven pipers piping, ten lords a-leaping,
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.
On the twelfth day of Christmas my true love gave to me
twelve drummers drumming, eleven pipers piping, ten lords a-leaping,
nine ladies dancing, eight maids a-milking, seven swans a-swimming,
six geese a-laying, five gold rings;
four calling birds, three french hens, two turtle doves
and a partridge in a pear tree.

gidral

Ну да, типа того

bjo999

это не прикольно, я вот такую прогу видел - она в шахматы играла..

gidral

Мда, интересно было бы посмотреть

tosha01

Это уже близко к фантастике. Хотелось бы оценить такую прогу (эт я о шахматах). Как она играет, посмотреть на код...
в одном месте ошибка и @#$#$%^^##$ запаришься искать, а в процессе написание наверняка хоть раз да опечатаешься.

Dasar

Такие программы пишутся в два этапа.
Сначала пишется программа в нормальном виде.
А потом переводится в компактный вид.
Перевод в компактный вид может делатся как руками, так и опять же программным способом.

a10031

А мне больше perl нравится

abrek

perl - это пошло, он слишком хорошо подходит для обфускации
попробуй вот на паскале такое месиво изобразить например, или на SML или ocaml

Dasar

> попробуй вот на паскале такое месиво изобразить
Какая разница? Поднять уровень шума можно на чем угодно (хоть на паскале, хоть на sml-е и т.д.)
пример (в качестве идеи):


_begin_end __begin begin _begin_:=_begin_begin_; if(_end) begin _begin_:=_end(_begin, end_).end_-^end_begin end end

Ivan8209



1) Your entry must be a complete program.
2) The size of your program source must be <= 4096 bytes in length.
The number of characters excluding whitespace (tab, space,
newline, formfeed, return and excluding any ; { or } immediately
followed by whitespace or end of file, must be <= 2048.
12) Legal abuse of the rules is somewhat encouraged. An entry that, in
the opinion of the judges, violates the rules will be disqualified.
Entries that attempt to abuse the rules must try to justify why
their rule abuse is legal in the submitted "remarks".


http://ioccc.org/rules.txt
---
...Я работаю антинаучным аферистом...

Dasar

> Поднять уровень шума можно на чем угодно (хоть на паскале, хоть на sml-е и т.д.)
Закончу свою мысль.
При чём, чем больше насыщенность записи, чем больше информации на единицу записи, тем проще сделать "мессиво".
У C информации на единицу записи приходится больше, чем в паскале.

tolik1

Видел прогу на паскале такого содержания:


program forumat;
begin
inline(...);
end.


Где "..." надо заменить на страницы две кода. Программа форматировала дискетки.

Ivan8209

Почитай про IOCCC.
Там была программа вида:
int main[]={0x..., 0x..., 0x...};
---
...Я работаю...

tolik1

Блина, я б не додумался до такого!


int main[]={0xCD, 0x19};

state7401281

int 19h уже давно работает не так как раньше, при выполнение этой программы сгенерится не помню какой эксепшн

state7401281

хотя если в real mode запустить, то может и получится .....

tolik1

Естественно, программа не мультиплатформная.
У нас стояли компы, там int 18h запускал GW BASIC из ПЗУ. Кидал пальцы, что вон бейсик в два байта уложил.

squeeze

а меня вот эта порадовала
http://www.de.ioccc.org/years.html#2000_dhyang

Ivan8209



#define/**/X
char*d="X0[!4cM,!"
"4cK`*!4cJc(!4cHg&!4c$j"
"8f'!&~]9e)!'|:d+!)rAc-!*m*"
":d/!4c(b4e0!1r2e2!/t0e4!-y-c6!"
"+|,c6!)f$b(h*c6!(d'b(i)d5!(b*a'`&c"
")c5!'b+`&b'c)c4!&b-_$c'd*c3!&a.h'd+"
"d1!%a/g'e+e0!%b-g(d.d/!&c*h'd1d-!(d%g)"
"d4d+!*l,d7d)!,h-d;c'!.b0c>d%!A`Dc$![7)35E"
"!'1cA!2kE`*!-d(!(k(f//g&!)f.e5'f(!+a+)"
"f%2g*!?f5f,!=f-*e/!<d6e1!9e0'f3!6f)-g5!4d*b"
"+e6!0f%k)d7!+~^'c7!)z/d-+!'n%a0(d5!%c1a+/d4"
"!2)c9e2!9b;e1!8b>e/! 7cAd-!5fAe+!7fBe(!"
"8hBd&!:iAd$![7S,Q0!1 bF 7!1b?'_6!1c,8b4"
"!2b*a,*d3!2n4f2!${4 f. '!%y4e5!&f%"
"d-^-d7!4c+b)d9!4c-a 'd :!/i('`&d"
";!+l'a+d<!)l*b(d=!' m- a &d>!&d'"
"`0_&c?!$!$!$ b < ^&d$`"
":!$d9_&l++^$!%f3a' n1 _ $ !&"
"f/c(o/_%!(f+c)q*c %! * f &d+"
"f$s&!-n,d)n(!0i- c- k) ! 3d"
"/b0h*!H`7a,![7* i] 5 4 71"
"[=ohr&o*t*q*`*d *v *r ; 02"
"7*~=h./}tcrsth &t : r 9b"
"].,b-725-.t--// #r [ < t8-"
"752793? <.~;b ].t--+r / # 53"
"7-r[/9~X .v90 <6/<.v;-52/={ k goh"
"./}q; u vto hr `.i*$engt$ $ ,b"
";$/ =t ;v; 6 =`it.`;7=` : ,b-"
"725 = / o`. .d ;b]`--[/+ 55/ }o"
"`.d : - ?5 / }o`.' v/i]q - "
"-[; 5 2 =` it . o;53- . "
"v96 <7 / =o : d =o"
"--/i ]q-- [; h. / = "
"i]q--[ ;v 9h ./ < - "
"52={cj u c&` i t . o ; "
"?4=o:d= o-- / i ]q - "
"-[;54={ cj uc& i]q - -"
"[;76=i]q[;6 =vsr u.i / ={"
"BihY_gha \0 " , o [
3217];int i, r,w,f , b ,x ,
p;n{return r <X X X X X
768?d[X(143+ X r++ + *d ) %
768]:r>2659 ? 59: ( x = d
[(r++-768)% X 947 + 768] ) ?
x^(p?6:0):(p = 34 X X X )
;}s{for(x= n ; ( x^ ( p
?6:0==32;x= n ) ;return x ; }
void/**/main X { r = p
=0;w=sprintf (X X X X X X o
,"char*d="); for ( f=1;f < * d
+143;)if(33-( b=d [ f++ X ] )
){if(b<93){if X(! p ) o
[w++]=34;for X(i = 35 +
(p?0:1);i<b; i++ ) o
[w++]=s;o[ w++ ]
=p?s:34;} else X
{for(i=92; i<b; i
++)o[w++]= 32;} }
else o [w++ ]
=10;o [
w]=0 ;
puts(o);}


Для тех, у кого нет Сети.
---
...Я работаю...
Оставить комментарий
Имя или ник:
Комментарий: