Perl - язык гениев?
Не смог пройти мимо такого :). Создайте файл test.pl со следующим содержанием, и запустите. Программа будет рисовать у вас в консоли вращающуюся спираль. Скорость вращения зависит от мощности компьютера.
#!/usr/bin/perl $_=' $q ="\ 47"; wh ile ($ ;= $z += .5 ){ %c= $r=0;$/ ="";whi le(2 0+ $z>($;+=.05)){$c{int$ _+ 2 6+ 2*($ r+= .0 2) * s in$ ;}{1 -$_ +1 0+ int $r*c o s $ ;} =1for(0. .1) }$ t =r ever se;$ /. =` c le ar `. " #! / usr /bi n/ pe rl \n\ $_ =$q \n" ; fo r$y (1..20){$c{$_} { $ y }? $ /.=chop$t : ($/ . =" \4 0") for(0. .53) ; $/. ="\n"}pri nt"$/$ q; s; ". chr(9 2)."s;;g;eval\n "} ';s;\s;;g;eval
Вам понравилась статья? Тогда подпишитесь на блог и получите возможность выиграть полную версию MetaProducts Inquiry SE совершенно БЕСПЛАТНО! Розыгрыш проводится раз в месяц.
Подписаться вы можете через RSS или через email
Комментарии
На Windows можно поставить http://www.activestate.com/Products/activeperl/ и потом через него.
На Linux perl уже есть. Права на выполнения поставил и enter
А кажется, что это язык маньяков!
А чё,прикольно!Только если один символ изменишь,и не катит...вот блин!!!
> Если символ изменишь - не катит
Ничего удивительного!
Дело в том, что это программа отображающая собственный код. Её даже в неспиральном виде написать нетривиально.
>Ничего удивительного!
Дело в том, что это программа отображающая собственный код. Её даже в неспиральном виде написать нетривиально.
Я говорю,если один символ в ТЕКСТЕ изменишь,уже не поедет...А в принципе можно создать такуюже,но намного больше и помощнее...Хотелось бы это посмотреть:)
А токое вам понятно хотя бы что-нибудь?!
#!/usr/bin/perl$_='$q ="\47"; while($ ;=$z+=.5 )
{%c=le(20+$z>($;+=.05))
{$c
{int$+26+2*($r+=.02)*sin$;}
{1-$_+10+int$r*cos$;}=1
for(0..1)}
$t=reverse;
$/.=`clear`."#!/usr/bin/perl\n\$_ =$q\n";
for$y(1..20)
{$c{$_}{$y}?$/.=chop$t:($/.="\40")
for(0..53);$/.="\n"}
print"$/$q;s;".chr(9 2)."s;;g;eval\n"}';s;\s;;g;eval
Мне нет, я вообще Perl не знаю :)
Возможно это похожая программа на Perl,но алгоритм другой,попробую написать в ручную и запустить,результаты скажу позже...
через что запускать?