七行プログラミング (452レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
300(3): 7telnetd [sage] 04/03/25 10:13 ID:??? AAS
cd 実装。
#!/usr/bin/perl
use IO::Socket;$S=new IO::Socket::INET(Listen,1,LocalPort,1029,Reuse,1);sub p{
print$C @_}sub g($){($_=getc$C)eq pop}$n="\x0D\x0A";{binmode($C=$S->accept);$e=
1;$b='';p$p='$ ';{g"\xFF"?g"\xF7"?chop$b:/\xF8/?($b=''):/[\xFB-\xFE]/?do{$c=ord
()-251;g"\x01"?($e=$c&2):/\x22/?($c&1or$e=0):($c=1);p pack(C2,255,250+(4,2,2,4,
3,2,1,4)[$c&1?$c:$c+4]),$_}:0:/\x00/?(($_,$b)=$b,s/[$n]+\z//,/^exit$/&&last,p$n
,(/^cd\s+/?chdir$':map{s/\s+\z/$n/;$_}`$_`),$p):(/\x08/?chop$b:($b.=$_),/[$n]/
||$e&&p$_);redo}close$C;redo}
160(1): nobodyさん [sage] 03/08/18 07:15 ID:??? AAS
ちょっと長くなったけど、初心者質問スレを荒らしている彼に捧げよう。(w
#--- br.p ---
package P;sub c{bless pop,pop}sub s{$_[0]->{s}}sub n{$_[0]->{n}}sub h{my($s,$c)
=@_;$c||return$s->{h};($s->{h}+=$c)>0or$s->{h}=0}sub b{my($s,$e)=@_;my@w=keys%{
$s->{w}};my$w=$w[int rand@w];print$s->n,' は ',$w," で攻撃!\n";my($d,$a)=@{$s->
{w}{$w}}{d,a};$d=(my$n=int rand 101)>$a?0:$n>$a/2?int($d/2)-$e->s:$n>$a/20?$d-
$e->s:$d;print$d<=0?"ミス!\n":($e->n,' に ',$d," ポイントのダメージ!\n");$e->h(
-$d)||print$e->n," を倒した!\n"}package main;sub p{splice@p,int rand@p,1}@p=map
P->c($_),@{do'./p.dat'};while(@p>1){my$o=p;my$d=p;print"\n",$o->n,':',$o->h,' '
,$d->n,':',$d->h,"\n";$o->b($d);push@p,$o;$d->h>0&&push@p,$d}print(shift(@p)->n
, " の 勝利!\n")
#--- p.dat ---
[{n=>'煽り',h=>400400(2): nobodyさん [] 2006/02/28(火) 10:19:55 ID:5vE9CKm+(1) AAS
#!/usr/bin/perl
if($ENV{'REQUEST_METHOD'}eq'POST'){read(STDIN,$b,$ENV{'CONTENT_LENGTH'});
foreach(split(/&/,$b)){($c,$d)=split(/=/,$_);$d=~tr/+/ /;
$d=~s/%([a-f\d]{2})/pack('H2',$1)/egi;$form{$c}=$d}open(F,'>>z.txt');
print F "$form{y}\n";close F}print"Content-type:text/html\n\n<html>
<form action=x.cgi method=post><input type=text name=y><input type=submit>
</form><br><br>";open(F,'z.txt');while(<F>){print "$_<br>\n"}print'</html>';
s=>1010(3): nobodyさん [sage] 02/11/01 19:53 ID:??? AAS
ワーイ 3行にナッター 有難う。
まだまだperl勉強中の身ですー
w=>{'キック'=>{d=>60a=>60},'パンチ'=>{d=>20a=>70},}}
,{n=>'荒らし',h=>300s=>0w=>{'キック'=>{d=>100a=>60},'パンチ'=>{d=>40a=>70}}
},{n=>'夏厨',h=>200s=>20w=>{'キック'=>{d=>80a=>90},'パンチ'=>{d=>10a=>100}}
}];
162: nobodyさん [sage] 03/08/19 11:57 ID:??? AAS
縮めて CGI プログラムにした。これで彼も満足だろう。
#--- br.cgi ---
#!/usr/local/bin/perl
use CGI':all';put header(-charset=>($c='EUC-JP')),start_html(-lang=>ja,-title=>
'B.R.',-encoding=>$c);@p=@{do'br.dat'};sub e{splice@p,int rand@p,1}while(@p>1){
*o=e;*d=e;put p"$o{N}:$o{H} $d{N}:$d{H}";@w=keys%{$o{W}};$w=$w[int rand@w];($p,
$a)=@{$o{W}{$w}}{D,A};put p("$o{N}は$wで攻撃!",(($p=($n=int rand 101)>$a?0:$n>
$a/2?int($p/2)-$d{S}:$n>$a/20?$p-$d{S}:$p)>0or$p=0)?"$d{N}に$pポイントのダメー"
.'ジ!':'ミス!');($d{H}-=$p)>0or put p"$d{N}を倒した!";push@p,\%o;$d{H}>0&&push
@p,\%d}put p(pop(@p)->{N}, 'の勝利!'),end_html
#--- br.dat ---
[
{N=>'煽り', H=>400S=>10W=>{'キック'=>{D=>60 A=>60},'パンチ'=>{D=>2020(2): nobodyさん [sage] 02/11/02 00:10 ID:??? AAS
print <<7LINE;
*******************************************************************************
*******************************************************************************
*******************************************************************************
*******************************************************************************
*******************************************************************************
*******************************************************************************
*******************************************************************************
7LINE
A=>7070(2): nobodyさん [sage] 02/11/21 22:52 ID:??? AAS
括弧わすれてた・・・ゴメン(再び修正
\b(([A-Z][a-z]+){2,})\b
}}},
{N=>'荒らし',H=>300S=>0 W=>{'キック'=>{D=>100A=>60},'パンチ'=>{D=>40A=>70 }}},
{N=>'夏厨', H=>200S=>20W=>{'キック'=>{D=>80 A=>90},'パンチ'=>{D=>10A=>100}}},
];
308: SevenLines の中の人 [sage] 04/04/16 12:18 ID:??? AAS
ダメ出しが無いようなので 7telnetd (>>300) と Unit7 (>>305305(1): Unit7.pm [sage] 04/03/29 10:31 ID:??? AAS
#!perl
if(!caller){my$p=pop;eval"use $p;1"?new$p->run:die$@}package Unit7;sub p{print"
@_\n"}sub new{bless{},shift}sub run{$N=$O=0;for(grep/^test/,keys%{ref($s=shift)
."::"}){$T=$n=$o=0;$N++;set_up$s;$s->$_();tear_down$s;$n-$o||$O++;$T||p"$N) $S"
;print"$o/$n ok\n"}p$N-$O?("Run: $N, Failures:",$N-$O):"OK ($N tests)"}*set_up=
*tear_down=sub{};sub assert{($s,$f,$m)=@_;($S)=(caller 1)[3]=~/\w+$/g;$n++;$o++
,return if$f;$T++||p"$N) $S";print"\t$m\n"}$VERSION=1.00
・出力フォーマットの変更
・簡易 TestRunner.pl を内包 (> perl ./Unit7.pm My::TestCase::Class)
) を載せました。
(個人的な)TODO: 7ch と 7thread の転載体裁整え > Store7 > 7vote
128 氏もライセンス GPL にしちゃっていいんでしょか?
ご自身のサイトをお持ちでそちらで公開されるなら、SevenLines から
リンクさせてもらいますよと言ってみるテスト。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル アボンOFF
ぬこの手 ぬこTOP 0.026s