perl@数学板

このエントリーをはてなブックマークに追加
1supermathmania ◆ViEu89Okng
#!/perl
print "無いので立てました。\n";
2132人目の素数さん:03/08/21 16:08
3 132人目の素数さん [sage] 03/06/04 01:34
数学的とかin数学板とかつければ
何でも立てていいと思われてもなぁ
3132人目の素数さん:03/08/21 16:38
/ に perl 置くなんて、ユニークな奴だな
4supermathmania ◆ViEu89Okng :03/08/21 18:07
#!/perl

#普通はルートディレクトリにperlを置かないから、
#!/usr/bin/perl
#!/usr/local/bin/perl
#などのようになる。
print "\x1b[31mrubyってどう?\x1b[0m\n";
5132人目の素数さん:03/08/21 21:02
良スレ保守
6132人目の素数さん:03/08/21 21:05
糞スレ保守
駄スレ保守
8132人目の素数さん:03/08/21 21:07
Qちゃん昔の名前に戻ったのかな?
9supermathmania ◆ViEu89Okng :03/08/25 10:01
% perl -e 'print "perl -e 'コマンド' と書くと簡単にperlコマンドが実行できる。\n"'
% perl -e 'print "これがperlの優れている点だ。\n"'
10132人目の素数さん:03/08/25 11:18
perl はつぎはぎだらけの寄せ集め、C++からBASIC,FORTRANなどなど
各種言語の良いトコだけつまみ食いしてて、一貫性がないけど、
とにかく「使いやすい」って事を追求し続けた言語。
11@_;:03/08/25 23:17
use AGE;
12supermathmania ◆ViEu89Okng :03/08/26 14:26
#!perl
print "コマンドラインから実行するとき、-e\x27 -e\x27の間にコマンドを挟むのだけれど、\x27を入れ子にすることは出来ないのか?\n";
$x=100;
print "それはさておき、print \x22 \x22と、print \x27 \x27は違うのだよ。\n";
print "\x22 \x22と\x27 \x27の違いには注意しないと、プログラムを書くときに困ってしまう。\n";
print 'x=$x\n';print "x=$x\n";
13supermathmania ◆ViEu89Okng :03/08/26 14:34
#!/perl
print "間違えた。perl -e\x27 \x27の間にコマンドを挟むのだ。\nそれにしてもこの方法では間に\x27を書くことはできないのか?\n";
print "とりあえず余興としてこんなのを書いてみる。perlは文字列操作も結構強力だ。\n";
print "print \x27perlは素晴らしい。\x27x16,\x22\x5cn\x22\x3b\n";
perlermathmania ◆ViEu89Okng
15supermathmania ◆ViEu89Okng :03/08/26 16:20
#!/perl
print "整数と整数を/で計算すると、浮動小数になる。\n";
print "型宣言がないとなればこれは当然か?\n"
print 7/3," ",int(7/3)," ",7%3,"\n";
print "rubyでも、やはり型宣言がない。\n";
print "FortranやVisual Basicでは型宣言をしなくても良いが、型宣言もある。\n";
print "ちなみにperlにもlocal変数とglobal変数の違いがある。local宣言しない限り、変数はglobalだ。\n";
$x='super'x3;$x='perler'.$x.'mathmania';print $x,"\n";
16supermathmania ◆ViEu89Okng :03/08/26 16:24
#!/perl
print "[>15]の3行目のセミコロンが抜けてしまった。\n";
print "perl -e\x27 \x27のときはセミコロンが抜けても大丈夫だが、ファイルから実行するときはそうはいかない。\n";
17132人目の素数さん:03/08/26 17:03
#!/perl
print "ここはprintしか使わないんですね\n";
#!perl
print q|/の下にperlなんてひと、初めて見た\n|;
19supermathmania ◆ViEu89Okng :03/08/27 11:46
#!/perl
$i=17;
print "Re:>",$i," 一応printfもあるが、printの方が何となく使いやすい気はする。\n";
print "Re:>",++$i," perlをどこに置くかは区々なので、/perlにしているのだ。\n";
print "もう知っているかも知れないが、++\x24iと\x24i++は異なるものだ。\n";
print $i++;print ++$i;print "\n";
20supermathmania ◆ViEu89Okng :03/08/28 14:57
#!/perl
print "機種依存命令を書いてみよう。(Macだとどうなるのか?)\n";
print "perl -e\x27print \x60cd\x60;\x27\n";
Qウザさんへ

プログラマ板でも注意しましたが、日記を付けたいのならば
ご自分のサイトでどうぞ。最近はblogなんてのも注目されてますし

21 名前:Qウザ mathmania は氏ね[sage] 投稿日:03/08/28 18:10
Qウザさんへ

プログラマ板でも注意しましたが、日記を付けたいのならば
ご自分のサイトでどうぞ。最近はblogなんてのも注目されてますし
23supermathmania ◆ViEu89Okng :03/08/29 10:21
#!/perl
print "perlの文字列の結合は.で、繰り返しはxだ。\n";
print "C言語のときのように、+=,-=などが使える。\n";
$y=0;for($i=0;$i<100;$i++){
$y+=(i/100)**2/100;}
print "x**2を0から1まで積分すると、約$yになる。\n";
$y-=1/3;print "真の積分値との誤差は$yである。\n";
24supermathmania ◆ViEu89Okng :03/08/29 10:25
#!/perl
print "初心者がやる誤りを私もしてしまった。\n";
print "訂正\x3a\x20i\x20\x2d\x3e\x20\x24i\n";
print "スカラ変数は\x24を先頭に付けるのである。\n";
print "要するに普通の変数は$x24がつくのだ。\n";
25132人目の素数さん:03/08/29 12:55
Qちゃん、まだperl置き場変えないの?
26supermathmania ◆ViEu89Okng :03/08/30 11:56
#!/perl
print "コマンド群をファイルに書いて、ファイル名を\x23\x23\x23\x23.plとしたとき、\n";
print "\x1b[33mperl \x23\x23\x23\x23\x1b[0m\n";
print "と書けば(リンクの設定が適切ならば)\x23以降に何を書いても大丈夫だ。\n";
27supermathmania ◆ViEu89Okng :03/09/01 09:42
#!/perl
print "perlの実行の方法は少なくとも3通りある。\n";
print "そのうちの一つに、perl (ファイル名)と入力して実行する方法がある。\n";
print "この時には#以降に何を書いても良い。\n";
print "しかし、実行ファイルとして実行するときには、一行目の部分をきちんと書かないといけない。\n";
print "私が/perlと書いているのは、別にperlがルートディレクトリに有るからではない。\n";
printしかつかってねぇじゃん
ヒアドキュメント使え、読みにくい。
30supermathmania ◆ViEu89Okng :03/09/03 13:29
#!/perl
$i=28;printf("Re:>%d 変数とインクリメントと代入も使っている。[>%d]も参照。\n",$i,23);
$i++;print "Re:>",$i," ヒアドキュメントの使い方を説明してください。何せ私はperl初心者のもので。\n";
print "\nperlは初心者だが、\e[33mC言語\e[0mとかはよくやっているので、perlの習得もそんなに難しくない。\n";
#!perl
print <<TEXT;
>>30
初心者ならここに書く前にドキュメントよめよバカ。
php板に逝って、参考リンクでも巡ってくるか、googleってこいよ。
TEXT
32supermathmania ◆ViEu89Okng :03/09/04 12:51
#!/perl
print "Re\x3a\x3e\x33\x31 ヒアドキュメントの使い方はよくわかりました。\x0a";
print <<TEXT;
それはさておき、BigIntモジュールを取り込むと、任意精度の整数値が計算できるが、
\e[31mruby\e[0mだと標準で任意精度の整数が付いてくる。
それじゃあ、perlもいつかは標準で任意精度の整数が使えるようになるのだろうか?
TEXT
__end__
>>32
おもしろくないよ^^
なんつうか全然perlじゃないねえ。
せいぜい教えてもらったヒアドキュメントくらい。
35supermathmania ◆ViEu89Okng :03/09/04 14:57
#!/perl
print "Re:>34 perlといえば、正規表現とハッシュか?(\e[31mruby\e[0mにもある。)\n";
print "基本的にプログラミング言語は加減乗除、出力、条件分岐、ジャンプ、繰り返しなどが基本にあり、\n";
print "言語ごとの特徴というのは基本的な部分には現れにくいものと思われる。\n";
__end__
エスケープシーケンスもウザ員だけど
>>35
だたらここに基本的なことじゃなくて
perl特有の事かいてよ。
perlのリファレンスとCのポインタの大きな違いとか。
PerlのリファレンスってC#のアレとほぼ同等なんですかね。
Qウザマンはわからないので一生懸命ぐぐってます。
>>37
>>35ではないけどこたえさせてもらいます。
perlのリファレンスは、Cのポインタと違ってポインタ演算を行えません。
ていうか行う必要がないんですけどね。
@X = (2,4,6);
@Y = (3,5,7);
@Z = (@X,@Y);

#で和集合を表現できます。
#@Zの内容を次の文で出力すると

print "@Z\n";

#2 4 6 3 5 7
#と出力されます。

#ただし、数学の集合とちがって要素が同じものも別要素として含んでしまいます。

@X = (1,2,3);
@Y = (2,2,5);
@Z = (@X,@Y);

#@Zの内容を次の文で出力すると

print "@Z\n";

#1 2 3 2 2 5
#と出力されます。
#数学の和集合を表現したい場合は、次のように表します。

@X = (1,2,3);
@Y = (2,2,5);

@Z{@X,@Y} = ();
@Z = keys %Z;

#@Zの内容を次の文で出力すると

print "@{[sort{$a<=>$b}@z]}\n";

#1 2 3 5
#と出力されます。

print "@z\n";

#だと表示される順番が予測されないので出力の際に並び替えを行いました。
#すみません、@zは、@Zの書き間違いです。
#積集合を表現したい場合は、次のように表します。

@X = (1,2,3,6);
@Y = (2,5,6,7);

@Z{@X} = ();
@Z = grep{exists$Z{$_}}@Y;

#@Zの内容を次の文で出力すると

print "@{[sort{$a<=>$b}@Z]}\n";

#2 6
#と出力されます。
>>42
>>44は役にたった。
supermathmania ◆ViEu89Okng よりも役にたった。
=pod
シャッフルするよ!
=cut

@x = 1..10;

for(0..$#x){@x[$_,$i]=@x[$i=int rand@x,$_]}

print join"\n",@x;
=pod
最大値と最小値!
=cut

@x = (2,4,7,5,9,7,10,3,2,6,5);

$max = (sort{$b<=>$a}@x)[0];
$min = (sort{$a<=>$b}@x)[0];

print "MAX=$max MIN=$min\n";

=pod
こうすると最大と最小がいっぺんでとれる。
=cut

($max,$min) = (sort{$b<=>$a}@x)[0,$#x];

print "MAX=$max MIN=$min\n";
=pod
1000までの素数を求めてみる!
=cut

$n = 1000;

for$i(2..$n){$s=1;for(@s){$s=$i%$_?next:0;last}push@s,$i if$s}

print join"\n",@s;
49supermathmania ◆ViEu89Okng :03/09/08 16:10
#!/perl
print "perl特有のことといえば、暗黙の変数\x24\x5fとか、\x241,\x242,...などがある。";
print "while\x28\x3c\x3e\x29\x7bprint\x2b\x7dは有名な例だ。\n";
print "検索文字を\x241などに格納することができる。\n";
print "私のサンプルプログラムを試してみよう。最大公約数が出る。\n";
@a=(450,36,108,720);$b=$a[1];
foreach(@a){
$c=$_;
while($c!=$b){if($b>$c){$d=$b;$b=$c;$c=$d;}$c-=$b;}}
print $b,"\n";
print "ちなみに\x241は検索キーを括弧で囲めば使える。正規表現と併せて使うのが普通だろう。\n"
・・・なんなのこのスレ(;´Д`)
mathmaniaのスレだ。ここに書き込むと言う事は彼を崇めるに等しい
52supermathmania ◆ViEu89Okng :03/09/22 15:43
#!/perl
print "DOS上でperlファイルを実行ファイルとして動かすとどうなるのか?\n";
print "試せる人っているかなぁ?(試さない方がいいが。)\n";
print "折角だから、基本的な統計量の計算をしてみよう。\n";
@a=(0.,.1,.1,.15,.15,.17,.17);
$b=0;foreach(@a){$b++;}print "配列aの要素数は",$b,"\n";
$c=0.;foreach(@a){$c+=$_;}print "配列aの総和は",$c,"\n";
$d=0.;foreach(@a){$d+=$_*$_;}print "配列aの2乗の総和は",$d,"\n";
print "平均=",$c/$b,",偏分散=",$d/$b,",不偏分散=",$d/($b-1),"\n";
とりあえず、http://www.cpan.org に逝って来い。
自分でコード書くな。有り物使え。それが真の
perl書きというもの。
勉強のためなら車輪の再開発もいいけどな
55supermathmania ◆ViEu89Okng :03/09/23 14:43
#!/perl
print "それより知っているかな?\x5f\x5fend\x5f\x5fより下の行にデータを書ける。\n";
print "perlにはデフォルトで配列があるから関係ないが。\n";
print "階差数列\n";
@a=(0,1,4,10,20,35,56,84,120,165,220);
@b=pop(@a);@c=unshift(@a);
@d=@c-@b;print @d,"\n";
__end__
56supermathmania ◆ViEu89Okng :03/09/23 14:53
#!/perl
@a=(0,1,4,10,20,35,56,84,120,165,220);
@b=@a;@c=@a;pop(@b);shift(@c);
for($i=0;i<11;i++){$d[i]=$c[i]-$b[i];}
for($i=0;i<10;i++){print $d[i]," ";}print "\x08\n";
__end__
せめて説明と内容が合っているコードを投稿してほしい。

58supermathmania ◆ViEu89Okng :03/09/23 14:58
#!/perl
@a=(0,1,4,10,20,35,56,84,120,165,220);
for($i=0;$i<10;$i++){print $a[$i+1]-$a[$i]," ";}print "\x08\n";
__end__
お願いがあります。せめて、狼本の内容
http://www.amazon.co.jp/exec/obidos/ASIN/1565923987
を自力で間違いなく書けるようになるまで投稿を控えていただけま
せんか。この本の数値系を読んだときは、笑う余裕がありました。
だけど、あなたのコードを見ていると気が狂いそうになります。
60supermathematica:03/09/23 15:52
#!/user/local/bin/perl
print "Content-type: text/html\n\n";
print <<END;
<HEAD><TITLE>謝罪</TITLE></HEAD>
<BODY>
ごめんなさい。二度と来ません・・・。
</BODY>
</HTML>
END
exit;
61supermathmania ◆ViEu89Okng :03/09/23 15:56
#!/perl
print "Re\x3a\x3c60 パスの指定が間違っているぞ。\x0a"
__end__
62supermathmania ◆ViEu89Okng :03/09/23 15:57
#!/perl
print "Re\x3a\x3c私 セミコロンを忘れているぞ。\n";
__end__
/直下にperl入れている香具師に言われたくはないことだな(藁
あとお前ム板で何バカなことやっているんだ?
>supermathmania ◆ViEu89Okng

荒らさないでいただけますか?
65supermathmania ◆ViEu89Okng :03/09/23 16:03
#!/perl
print "Re\x3a\x3e63 これのことか?\n";
print "includeはstdio\x2ehとstdlib\x2ehのみで画面のどこかに100×100以上のウィンドウを1秒以上5秒以下出してウィンドウを閉じるプログラムを書け。\n";
print "\x5b\x3e63\x5dには出来るのか?\n";
66supermathmania ◆ViEu89Okng :03/09/23 16:04
#!/perl
print "Re\x3a\x3e64 これは私の立てたスレだ。\n";
__end__
>supermathmania ◆ViEu89Okng

荒らさないでいただけますか? 数学板を。
ム/マ板からも消えてください
まだQマソに逆らう元気のある奴がいたとは
70supermathmania ◆ViEu89Okng :03/09/24 12:44
#!/perl
print "Re\x3b\x3e68 あれ?私は最近マ板には書き込んでいないが。\n";
print "ところで、2chのタグ禁止処理も、perlで書いているのだろうか?\n";
__end__
イタチがいます
>supermathmania ◆ViEu89Okng

荒らさないでいただけますか? 数学板を。
2chのread.cgiとかbbs.cgiのソース読んだことない人発見
74132人目の素数さん:03/10/15 10:51
19
で、結局どうなんだよ
スレッドストッパー( ̄ー ̄)
77132人目の素数さん:03/11/02 20:59
age
78132人目の素数さん:03/11/14 05:58
30
79132人目の素数さん:03/12/04 18:11
e
462
81132人目の素数さん:03/12/27 06:21
1
775
83132人目の素数さん:04/01/19 08:09
11
505
85132人目の素数さん:04/02/08 13:00
perlマンセー
766
結局、誰も下手なコードは見たくないってこった。
下手ってのはあのコテ君のことね。
89KingMathematician ◆5lHaaEvFNc :04/03/26 10:35
#!/perl
$a=<STDIN>;#perlでは<STDIN>で標準入力からの読み込みとなる。
$a=~s/mathmania/supermathmania/go;#文字列の置換。これは大変基本的な置換である。
print $a,"\n";#\nの部分は、\x0d\x0aなどと書くことが出来る。
dout
549
177