再帰
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNGお前は再帰の意味がわかってるのか?
そうなら、是非解説してください。
ちなみに結構広い意味で使われてるのよ。
http://dictionary.goo.ne.jp/cgi-bin/dict_search.cgi?MT=%BA%C6%B5%A2&sw=2
0004デフォルトの名無しさん
NGNG00054
NGNG0006デフォルトの名無しさん
NGNG自己参照も再帰の一種かと。
0008デフォルトの名無しさん
NGNG0009デフォルトの名無しさん
NGNG「再帰について語るスレ」と致します。
0010デフォルトの名無しさん
NGNGどういうこと?未だにどうやって立てたのかわからん
0011デフォルトの名無しさん
NGNG001211
NGNGむっちゃ簡単じゃんよ
0014Nanasshy
NGNGMoon patiently told the student the following story:
"One day a student came to Moon and said: `I understand how tomake a better garbage collector...
[Ed. note: Pure reference-count garbage collectors have problems with circular structures that point to themselves.]
0015デフォルトの名無しさん
NGNG適当なリクエストでサーバータイムとの差をms単位で算出してから、
余裕があるタイミングでポストする(ping値も参考にする?)
これ位しか、やりかたを思いつかない。
0016デフォルトの名無しさん
NGNG0018デフォルトの名無しさん
NGNGリストとゆーか...
0020デフォルトの名無しさん
NGNGhttp://mentai.2ch.net/test/read.cgi?bbs=prog&key=992241448
sageで立てたから気付かれなかったけど。
0021デフォルトの名無しさん
NGNGhttp://mentai.2ch.net/test/read.cgi?bbs=prog&key=992241080
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNG再帰を人に教えるのは難しい。
ハノイの塔とかグラフィックを使うのとかは相手のレベルが低いと辛いし。
0024デフォルトの名無しさん
NGNG8クイーンじゃだめ?陳腐すぎますか?
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNGまずクイックソートでおしえれよ
002723
NGNGいきなりバックトラックだとちょっといやかな、とは思ったんですが。
ディレクトリを奥まで探っていく感じのサンプルがいいんだけど、
伝えたい感覚わかるかな?
>>25
ネタだよね(藁
>>26
理解してもらえませんでした(涙)
0028デフォルトの名無しさん
NGNG再帰的動作: function qsort(0,n) = qsort(0,n/2); qsort(n/2+1, n);
0029デフォルトの名無しさん
NGNG0030デフォルトの名無しさん
NGNG0031デフォルトの名無しさん
NGNGそのまた口から顔が出て来るのを見て再帰を理解しましたw
0032デフォルトの名無しさん
NGNGforeach(@a){printf"%".length($b="$_[0]\\$_")."s\n",$_;&d("$b")if(-d$b)}}
さぶでれくとり一覧を表示するperlスクリプト
0033デフォルトの名無しさん
NGNGグラフィックで雪印やドラゴンカーブを書かせれば
すぐに理解できるとは思うけれど
0034デフォルトの名無しさん
NGNG0035>>34
NGNGそのフォルダ相手に検索関数を実行する再帰手法が一般的
というか他のやり方はすぐに思いつかないのだが。
そういえばANSIにファイル検索関数ってなかったっけ。
0036デフォルトの名無しさん
NGNGCで再帰を教える代表的なものは、クイックソートだな。
>>35
それは深さ(縦)優先の再帰。逆の再帰もあるだろ。
深さ優先は使用メモリは最小限にできるが、
その深さに比例してハンドルをオープンしっぱなしにしなければならない。
0037デフォルトの名無しさん
NGNG逆の再帰って何ですか?
0038デフォルトの名無しさん
NGNG0039デフォルトの名無しさん
NGNG0040デフォルトの名無しさん
NGNG0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNGK&R(第一版)にのってる数字を表示するやつは結構簡単でいいと思う。
0043デフォルトの名無しさん
NGNGK&R、持ってない。どんなの?
0044デフォルトの名無しさん
NGNGbbb
ccc
ddd
という階層構造があった場合、
aaa->bbb->ccc->dddと上から(?)順番に探してくのが深さ優先
aaa->bbb->ddd->cccと浅い順から探してくのが幅優先。
無限に(あるいは十分に)深い階層を探索する場合はこっちが有効な場合が多い。
ただメモリを馬鹿食いする。
0046デフォルトの名無しさん
NGNGprintd(int n) /* nを10進数で表示 */
{
int i;
if (n < 0) {
putchar('-');
n = -n;
}
if ((i = n/10) != 0)
printd(i);
putchar(n % 10 + '0');
}
再帰使わない例も載ってて、それと比べると再帰の良さがわかりやすい。
004739
NGNG次の手、その結果に対して次の手とどんどん先読みしていくのが深さ優先。
次の手には何があるのかを全て調べてから、その次の手を調べるのが幅優先。
0048デフォルトの名無しさん
NGNG情報ありがとう>>46
0049デフォルトの名無しさん
NGNG0050デフォルトの名無しさん
NGNG再帰の例として良く見かけますけど、
階乗は、あまりメリットが見えないので、
n個以上(n>1)の数の最大公約数が良いかと…。
0051デフォルトの名無しさん
NGNG当然、全数探索にはO(2^n)かかるのを承知でだが。
指数オーダーはいかんよ。今さらだけど。
0052デフォルトの名無しさん
NGNG0053デフォルトの名無しさん
NGNG0054デフォルトの名無しさん
NGNGちと感動したよ。>>1
一発ネタだが、名スレだ。
0055デフォルトの名無しさん
NGNGって優香、クイックソートの実装に再帰を使うのはヤメレ
0056デフォルトの名無しさん
NGNG再帰を使うのはサンプルだけだろ
0057デフォルトの名無しさん
NGNG0058デフォルトの名無しさん
NGNG再帰をスタックに直すプログラム書いてくれ。
0059デフォルトの名無しさん
NGNG再帰使わない方法(スタック)は2以上の工数がかかる。
0060デフォルトの名無しさん
NGNG>>1を再帰を使わずに表現しなさい。
0061デフォルトの名無しさん
NGNGえっ!?なんで!?厨房なんでわからない。
教えて
0062デフォルトの名無しさん
NGNG0063デフォルトの名無しさん
NGNGサイキハショリガアマリハヤクナイ
0064デフォルトの名無しさん
NGNG1. 速度が遅い
2. スタックサイズは制限がある環境が多く、エラーハンドリングが面倒
ヒープならメモリ確保する時に正否が分かるが、スタックだと失敗した
瞬間にシグナル (しかも環境によっては SIGKILL) 飛んできたりするし。
0065デフォルトの名無しさん
NGNG>>56
再帰をスタックに直すプログラム書いてくれ。
これ作れば再帰で書いても良いんじゃない?
0066デフォルトの名無しさん
NGNGPOSIXならsigaltstack()が使えるが、
スタックが溢れたのかそうでないかを判別する手段がないんだよな。
なんかいい手知らない?
006761
NGNG一つ賢くなったよ。アリガトホ
0068デフォルトの名無しさん
NGNG同じく
0069デフォルトの名無しさん
NGNG0070デフォルトの名無しさん
NGNG再帰のコードを1とすると、
再帰使わない方法(スタック)は2以上の工数がかかる。
0071デフォルトの名無しさん
NGNGなぜ俺に言う。
しかも、ループに展開できるのは末尾再帰だけだ
0072デフォルトの名無しさん
NGNGそれから、再帰呼びだしのオーバーヘッドて
自分でスタック実装したときよりもそんなにデカいものなんですか?
アセンブラレベルで比べたことがないからわからない。
0073デフォルトの名無しさん
NGNG状況によって違う。
一般論では語れない。
0074デフォルトの名無しさん
NGNGおまえもなー。
0075デフォルトの名無しさん
NGNGナイス!ワラタ
0076デフォルトの名無しさん
NGNG違うよ。
クイックソートは平均がO(logN)なだけで、最悪の場合はO(N)になる。
0077デフォルトの名無しさん
NGNGクイックソートはO(n log n)。
最悪はO(n^2)。(避けれるように出来るけど)
>>72
> それから、再帰呼びだしのオーバーヘッドて
> 自分でスタック実装したときよりもそんなにデカいものなんですか?
結構でっかいような気はするなぁ。
0078デフォルトの名無しさん
NGNGif (sp == stack_num) stack = realloc(stack, stack_num *= 2);
stack[sp++] = val;
再帰
f(val);
スタックは毎回
・オーバーフロー判定(最初に見積もれれば不要)
・インデクス参照代入
・spの増加
再帰は毎回
・関数呼出し(オーバーフローは判定不能)
が必要。
0079デフォルトの名無しさん
NGNG> ・インデクス参照代入
> ・spの増加
popは…。
> ・関数呼出し(オーバーフローは判定不能)
これがでかいよね。
レジスタ退避させたり。
008077
NGNGO(log n)ってスタックのサイズの話ね……。
0081デフォルトの名無しさん
NGNGプログラム意味論的(よく知らんけど)に、
「再帰構造である」という主張が薄れるって害は無い?
(forやwhileをgotoに直す様な事と同等)
C->ASMの様に、
機械的(暗黙的に)にやらせるのが理想だと思うんだけど。
0083デフォルトの名無しさん
NGNGまあね。
でも意味重視で性能悪いのは・・・ね。
まあ、理解不能になるわけじゃないしいいんじゃない?
0084デフォルトの名無しさん
NGNG小さいブロックを先に…って話じゃ無理かと。
二つに分ける時に、片寄らないようにしないとイカン。
0085age
NGNG0086デフォルトの名無しさん
NGNG0087>>50
NGNG>階乗は、あまりメリットが見えないので、
>n個以上(n>1)の数の最大公約数が良いかと…。
nが2個ならユーグリッドの互除法だよね。
3つ以上ならどのように再帰で表現する?
出来なくないですか?
0088デフォルトの名無しさん
NGNGじゃないの?
0089デフォルトの名無しさん
NGNG0090本ヲタ
NGNGhttp://www.amazon.com/exec/obidos/ASIN/0262560992/002-6796989-4387263
The Seasoned Schemer
http://www.amazon.com/exec/obidos/ASIN/026256100X/002-6796989-4387263
A Little Java, a Few Patterns
http://www.amazon.com/exec/obidos/ASIN/0262561158/002-6796989-4387263
http://www.cs.rice.edu/~matthias/TLS/
http://www.cs.rice.edu/~matthias/TSS/
http://www.cs.rice.edu/~matthias/Javar/
リスト遊び
http://www.kame.net/~kazu/book/list.html
http://www.ascii.co.jp/books/detail/4-7561/4-7561-3442-4.html
http://www.amazon.co.jp/exec/obidos/ASIN/4756134424/249-7473945-9268357
0091デフォルトの名無しさん
NGNG「(末尾再帰ではない)再帰→スタック+ループ」
変換は機械的に可能でしょうか?
0092デフォルトの名無しさん
NGNG可能でしょ。
アセンブラレベルでは「スタック+ループ」みたいなもんじゃん。
あれがcallとretでなくjmp+αだったらいいだけでしょ?
# これは可能っていう根拠について書いてるので
# 上記の方法でやれってのとは違うです。
0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNGアセンブラにした所で、再帰構造のコードはずっと再帰ですが。
0095デフォルトの名無しさん
NGNGPCをスタックに積むかどうか?
0098デフォルトの名無しさん
NGNG確かに上がるね。ソースは汚くなるけど。
0099デフォルトの名無しさん
NGNG言語規約として末尾再帰(単体/相互)をgoto相当に展開する。
普通の再帰は知らないけど。
表現能力は、
再帰>スタック+ループ
0100デフォルトの名無しさん
NGNG0101デフォルトの名無しさん
NGNG0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG010498
NGNGなってたけど、ある本を読んだら最少順序変換法って名前が付いてた。
車輪を再発明してたのが判ってしばらく鬱だったよ。
>>102,103
入り口が複数なのね。
0105デフォルトの名無しさん
NGNGそうやって、人は一歩ずつ成長して行く
0106デフォルトの名無しさん
NGNGhttp://www.sci.toyama-u.ac.jp/~iwao/Scheme/r5rsj/html/r5rsj.html#SEC2
>繰り返しを表現する場合に手続き呼び出しのみを使用することによって、
>終端再帰的手続き呼び出しが本質的に引数を渡すgotoであることが、Schemeでは強調されている。
0107デフォルトの名無しさん
NGNG暗黙の制御スタック一つしかない再帰に比べれば、明示的な
スタックは複数もつことができて、より細かい制御はできるし。
まあ、安直なものは再帰のほうが楽にかけて、
世の中安直で十分な場合も多いというのは真だけど。
0108デフォルトの名無しさん
NGNG再び呪いをかけられることかと思ってたよ
0109デフォルトの名無しさん
NGNGBit悪魔の辞典ですか(笑)
0110>108
NGNG0111デフォルトの名無しさん
NGNG01121
NGNG0113デフォルトの名無しさん
NGNG1がコレだもんなぁ
0114デフォルトの名無しさん
NGNGナイーブな対応。再帰にしてみよう
0116デフォルトの名無しさん
NGNG0117再帰
NGNG0118デフォルトの名無しさん
NGNGStack overflow
0119デフォルトの名無しさん
NGNGほぉら、再帰に入る前に脱出の手段考えてないからこんなことに…
0120デフォルトの名無しさん
NGNGワラタ。おもろい
0121116
NGNG目から鱗だね!
0122デフォルトの名無しさん
NGNG0124デフォルトの名無しさん
NGNGって状況になるといいね。
0125デフォルトの名無しさん
NGNG0126デフォルトの名無しさん
NGNG0127116=121=125
NGNG0129デフォルトの名無しさん
01/08/28 16:05ID:4ABH04kY残念。
0130デフォルトの名無しさん
01/09/01 19:38ID:BF0ekyhU0131デフォルトの名無しさん
NGNG0132デフォルトの名無しさん
NGNGそんな・・・
意味もなくageなくても・・・
0133デフォルトの名無しさん
NGNG再帰使うと深さ優先の探索になるんだよね? 広さ優先と再帰って組めない?
0134デフォルトの名無しさん
NGNGオブジェクトのメソッドを呼び出すような再帰(?)なら可能だろ。
処理のメソッドと子供を辿るメソッドを分けて、前者をすべての
子供に対して読んでから後者を呼べばいい。
0135デフォルトの名無しさん
NGNG0136デフォルトの名無しさん
NGNG何のMakefileか教えてくれー。見てみたいー。
0137佐伯
NGNG0138デフォルトの名無しさん
NGNGどうやって「深さ優先」と「幅優先」を書き分けたらいいでしょうか?
良いアドバイスがあったらよろしくお願いします。
0139デフォルトの名無しさん
NGNGサブディレクトリに移動してmakeってやつ? ごく普通だろ。
>>136
linuxカーネルとかemacsのソースでも見てみ。
まぁライブラリを作ったりする場合は常識だな。
0140デフォルトの名無しさん
NGNG0141デフォルトの名無しさん
NGNGたまに間違ってfork爆弾になってるMakefileもあるな。
0142デフォルトの名無しさん
NGNG再帰なんか要らないよ
切り替えも簡単
幅優先:
O = 空リスト
Oにコピー元を入れる
while (Oが空でない) {
n = Oの先頭のファイル
if (nがディレクトリ) {
コピー先にnを作る
nの子を全部Oの末尾に追加
} else
nをコピー
}
深さ優先:
O = 空リスト
Oにコピー元を入れる
while (Oが空でない) {
n = Oの先頭のファイル
if (nがディレクトリ) {
コピー先にnを作る
nの子を全部Oの先頭に追加
} else
nをコピー
}
0144デフォルトの名無しさん
NGNGプロになってから一度も再帰なんて使ったこと無いぞ。
せいぜい、加減乗除とルートまで。
面倒な処理はライブラリがやってくれるから、再帰なんて勉強しないで
UMLとかやったほうが役に立つぞ。
再帰なんて研究者か学生専門だね。
0145デフォルトの名無しさん
NGNG0146143
NGNGまぁ、学生のうちはアルゴリズムの勉強で大いにやるべき。
むしろ、やらなきゃダメ。アイディアの元になるからね。
だけど、現場では全然使わないよ。
0147146
NGNG>>146の名前欄は「144」ね。
0148デフォルトの名無しさん
NGNGもう煽り誘導レスは飽きた。
0149144
NGNG意見を言っただけなのに・・・
0150デフォルトの名無しさん
NGNG確かに、スタック積んで降ろして積んで降ろして・・・という動作を想像して鬱になってしまうので、
再帰を採用する前に他のアルゴリズムが無いか検討はしてみることが多いな。
でも再帰は書いてて気持ちいいね。
0151デフォルトの名無しさん
NGNG個人的に好きなんで。
0152デフォルトの名無しさん
NGNGあんまり複雑なデータ構造は使わないんだな。
いや悪いといってるんじゃないので。
できる限り単純なほうがいいのは当り前だから。
> 面倒な処理はライブラリがやってくれるから、再帰なんて勉強しないで
でも再帰ひとつ満足に使えないのは論外。
0153デフォルトの名無しさん
NGNG使うなよ。
見た目が直感的に成る以外のメリットは無いだろ
0154デフォルトの名無しさん
NGNGネストが log(N) の場合なら問題ないでしょ
問題ってのはスタックサイズや処理コストの事ね
0155デフォルトの名無しさん
NGNGファイル検索なんか、再帰便利だし。
0156デフォルトの名無しさん
NGNG悩むのは、再帰をいかに展開するか、だろ。
0157デフォルトの名無しさん
NGNGお前みたいの限ってホントは理解してなかったりするんだ。
学習者だろ?
ナップザック問題に泣いてるんだろ(w
0158デフォルトの名無しさん
NGNG0159仕様書無しさん
NGNG例えば、gcc。
0160デフォルトの名無しさん
NGNGだから、なに?
0161159ではないが…
NGNGだから遠慮せずに再帰をどんどん使えって事では。
直感的になって効率も落ちないなら、つかわん理由がない。
0162デフォルトの名無しさん
NGNG0163デフォルトの名無しさん
NGNGプログラミングではスタックが出てくるから分かりにくいのだろうか?
0164デフォルトの名無しさん
NGNGそれは違うだろ…
C だろうとスタックは透過的なわけだし…
そもそもわかりにくいのか?
0165デフォルトの名無しさん
NGNG「普通の概念」っつっても「数列」挫折したような奴には難しいだろ。
0166デフォルトの名無しさん
NGNG再帰が嫌いなやつってVBプログラマか?
0167名梨産
NGNGスタックって、CPUのSPの事指してる?
スタックの動作をしたいだけならSPにあたる添字をキチンと制御してやれば
ただの配列変数でできるでしょ?特に解りにくいとは思わないけど。
>>166
VBでもできますよん。前に数式解析のルーチン作ったとき使った。
0168デフォルトの名無しさん
NGNG便利なもん使ってなんか不都合あるんだろうか?
0169デフォルトの名無しさん
NGNGどうして俺は再帰がきらいなんだろう。
悩んだ。
数日間それでなやんだ。
そしてとうとう結論を得た。
再帰するからだ。
0170デフォルトの名無しさん
NGNGネストし過ぎるとタックオーバーフローで止まる(最悪、暴走する)プログラムになる。
クイックソートの様な指数オーダーの再帰ではそんなにネストする事は無い。
0171デフォルトの名無しさん
NGNG{
if (n != 0)
bin2oct(n / 8);
putchar(n % 8 + '0');
}
0172デフォルトの名無しさん
NGNGどこまでネタなんだか (藁
指数オーダーってO(k^n)のことだぞ。
チェックしないとダメなのは配列+ループでも同じだろう。
暴走する可能性は素直な再帰の方が低いと思うが。
(Winとかってスタックチェックやってくれないのかな?)
0173デフォルトの名無しさん
NGNG面白い
>>170
対数
0174≠169
NGNG論点をまとめずに思考を進めてしまい、
再帰から抜けられないでいる。
0176デフォルトの名無しさん
NGNG処理系の実行速度を測ったりしたな
0177デフォルトの名無しさん
NGNGこの1行を書いたプログラムを実行するだけで、
あなたも再帰を体感できます。
0178デフォルトの名無しさん
NGNGブラクラに実装されてることが多いな。
0179デフォルトの名無しさん
NGNGロボット(腕だけのキット)をコントロールして自分自身のスイッチを切らせた人を知ってる…
0180デフォルトの名無しさん
NGNG0181デフォルトの名無しさん
NGNGよくありがちな
カレントディレクトリ以下の構造を再帰的に出力する、
というのを作りました。
いま手元にコードがないので擬似で。
void ls( char *name)
{
dp = opendir(name);
/* opendirで読んだディレクトリの中の ファイル/ディレクトリをすべて得る */
while( (dirp = readdir(dp)) != null )
{
print "%s\n",dirp -> name;
/* .(カレントディレクトリ、 .. (一個上のディレクトリは無視) */
if( dirp -> name == "." ||
dirp -> name == ".." )
{
continue;
}
/* そいつがディレクトリだったら、再帰的に */
if( dirp -> kind == directori )
{
ls( dirp -> name ):
}
}
}
int main(void)
{
ls(".");
return 0;
}
0182デフォルトの名無しさん
NGNG>>終了条件のない再帰ってありなの?
スタック食いつぶす分無限ループよりタチが悪いな。
いや、スタックオーバーフローでOSがトラップしてくれる分
かえって発見し易いか?
>>カレントディレクトリ以下の構造を再帰的に出力する、
って事ならその「処理中のディレクトリにサブディレクトリがない」
ってのが終了条件になってるし。
0183デフォルトの名無しさん
NGNGdouble power(double base, int ex){
if (ex == 0) return 1;
if (ex >= 1)
return base * power(base, ex-1);
else
return 1/power(base, -ex);}
0184デフォルトの名無しさん
NGNGinline double power(double base, int ex){
if (ex >= 0)
return power1(base, ex, 1);
else
return 1/power1(base, -ex, 1);}
double power1(double base, int ex, int acc){
if (ex == 0) return acc;
if (ex >= 1)
return power1(base, ex-1, base * acc);}
0185デフォルトの名無しさん
NGNGint ack(int x, int y)
{
if (x == 0) return y + 1;
if (y == 0) return ack(x - 1, 1);
return ack(x - 1, ack(x, y - 1));
}
0186あげ
NGNGint tarai(int x, int y, int z)
{
if (x <= y) return y;
return tarai( tarai(x - 1, y, z),
tarai(y - 1, z, x),
tarai(z - 1, x, y));
}
from 奥村 晴彦、C言語による最新アルゴリズム事典
0187デフォルトの名無しさん
NGNG{
if(value==0)
return 0;
else
return get_int_value(value-1) + 1;
}
0188デフォルトの名無しさん
NGNGそれは使いどころ間違ってるよ。
double power(double base, double ex)
{
return exp(ex * log(base));
}
だろ。
0189デフォルトの名無しさん
NGNG0190デフォルトの名無しさん
NGNGベンチマーク
0191デフォルトの名無しさん
NGNG183じゃないが、expとlogを使うより精度が高い。
0192デフォルトの名無しさん
NGNGでも遅い。整数乗しか扱えない。
0193デフォルトの名無しさん
NGNGヤパーリ、テイラー展開を使うべきか?
0194デフォルトの名無しさん
NGNG数学を勉強しないといけないの?
線形代数とかまで要求されるジャン・・・
0195デフォルトの名無しさん
NGNGexpは(ハードがやってくれなきゃ)当然多項式で近似するんだよ。
テイラーじゃなくてチェビシェフが普通だろうけど。
>>194
expを書こうなんて思えばね。
0196デフォルトの名無しさん
NGNG0197デフォルトの名無しさん
NGNG0198デフォルトの名無しさん
NGNG0199デフォルトの名無しさん
NGNG0200デフォルトの名無しさん
NGNG画像・音声など信号処理にはもちろん必要。
プログラミング一般においても数学的なセンスは必要だね。
演繹的・帰納的にアルゴリズムを組み立て解を出す様は
数学もプログラムもよく似ている。
0201デフォルトの名無しさん
NGNG0202デフォルトの名無しさん
NGNG0203デフォルトの名無しさん
NGNG0205デフォルトの名無しさん
NGNG0206デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNG0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNG最適化させた場合、goto相当に展開する。
0212デフォルトの名無しさん
NGNGアセンブラがわからないとだめ?
■ このスレッドは過去ログ倉庫に格納されています