プレイ日記
yuy(α) studio-reader
行列計算って、こんな感じ? ほぼ「ゲームプログラマ」から書き写し状態。
3そうだね
プレイ済み
返信[1]
親投稿
みむ*mim hidemimtp
あとは138-143、153-156も、Iではない別変数を使ってFOR文をネスト(入れ子。FOR文の中にさらにFOR文を書く)で回してやれば完璧ですね~
0そうだね
プレイ済み
返信[2]
親投稿
MIKI ifconfig
I はローカル変数にしないとダメね みむさんのループにする方法もいいんだけど、 速度の観点からはループ展開したほうが速いでしょう。 他の配列参照も、MX 同様変数に入れたほうが速いでしょう。
0そうだね
プレイ済み
返信[3]
親投稿
yuy(α) studio-reader
へぇー、配列から直接呼び出すよりも、一旦別の変数にコピーした方が早いのですな。 あとIがローカルじゃないのは宣言忘れですね。ウッカリ!
0そうだね
プレイ済み
返信[4]
親投稿
MIKI ifconfig
いや、実証はしてないけど、基本配列は激遅だから・・・ こういう、素直なコーディングができないのが basic の嫌なとこですね。 コンパイラ系の言語だったら、みむさんみたくループで書くだろうし、 一時変数も使わないかなあ?? とにかく見易さ優先で書けるのです。
0そうだね
プレイ済み
返信[5]
親投稿
yuy(α) studio-reader
こんな感じ? すっきり。
0そうだね
プレイ済み
返信[6]
親投稿
MIKI ifconfig
いやいやいやいや ループの中でいちいち一時変数に代入してたら意味ないですね。 一番最初に M11 M12 ... に代入しておく。 すると配列みたいに指標は使えないから、全部の計算を展開してずらずらと書く。 それで全体の処理速度がスピードアップ! 手間は大変だけど、def にしとけば一度検証すればいいだけだからね。
0そうだね
プレイ済み
返信[7]
親投稿
みむ*mim hidemimtp
速度アップはとても大切なのですが、多次元配列をネストで総なめする基本的なやり方を覚えたからでもいいかなーと。 FOR Y=0 TO 3  FOR X=0 TO 2   PRINT FORMAT$(" %5D",CEL%[X,Y]);  NEXT  PRINT ’改行 NEXT でも最近「基本的」と「古い」がイコールになる場合があるので怖い・・・。
0そうだね
プレイ済み