いもあらい。

プログラミングや哲学などについてのメモ。

すごいプログラム。

2006-12-16 04:59:00 |  Etc...
ネットで見つけた、解読不能なプログラム(+α)。

なにやら、わざと読みにくくしたプログラムというものがあるらしくて、国際コンテストも開かれているらしいんだけど、ネット上で紹介されていたのが1988年のphillipps.cというプログラム。

#include <stdio.h>
main(t,_,a )
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 i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry"),a+1);
}

・・・さっぱり分からない^^;

しかし、何より驚愕したのは、その実行結果。
なんと、上のコードをコンパイルして実行すると、次のような文章が現れる・・・!

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 eighth 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.

さっきのリンク先からソースが落とせるので、コンパイルできる人はコンパイルして引数無しで実行してみるといいかも。



で、自分が見たHPで紹介されていたのは上のだけだったんだけど、さっきのページを眺めていって目に付いたのが、omoikaneというプログラム。(2004年の作品)
・・・オモイカネ(@機動戦艦ナデシコ)?

どんなんだろう・・・とソースを見てみたら、ちょ、ソースがアスキーアートになってるしwww

このプログラムを書いた人のHPとか見てみると、かなりヤバイwww
このページとか、正気とは思えないしw
(しかも、この人Googleのエンジニアだよ、、、すごいなw)


最新の画像もっと見る