• 締切済み

収束計算

ファイル(行列形式)をプログラムに読み込んで、プログラム上で計算させようと思っていますが、ファイルを読み込むプログラムを教えて下さい。 次に ある式に値Aを代入して次の10個の値が出てきたとします。 B,C,D,E,F,G,H,I,J,K この10個の合計が0(ゼロ)に近くなるような(収束するってこと?)値Aを決めるプログラムを教えて下さい。

みんなの回答

  • yaho
  • ベストアンサー率71% (5/7)
回答No.2

はじめまして、yahoです。 質問の内容についてのプログラム(簡単ですけどね)を以下に載せます。 Private Sub Command1_Click() Dim i as integer,j as integer Dim a(10,10) as integer ' 10は適当 CommonDialog1.ShowOpen ' オープンダイアログを開く' CommonDialog1.CancelError = True On Error GoTo can_err Open CommonDialog1.FileName For Input As #1 For i = 0 To GYOU ' (GYOU × RETU 行列) For j = 0 To RETU Input #1, a(i, j) Next Next Close #1 can_err: End Sub ここで、読み込むファイルには、 1 2 3 4 5 6 7 8 9 10 11 12 のように保存しておきます。(4×3行列、間はスペースで) またあらかじめGYOUとRETUに値を入れておきます。 (この場合、GYOU=3,RETU=2) これによりa配列に値が入ります。 次の質問ですが、No1の方がおっしゃられたように10個の値が出てくるのが分かりません。 (ですのでそこは飛ばして)10個の値が出てきたとしたら、それを順順に加算して、それsumが0に近ければ終了し、そうでなければGOTO文で戻してやればいいのではないんでしょうか? 例えば、 if(abs(sum) < E-5) then 終了 else goto 戻る です。 もし、ニュアンスが間違ってたらごめんなさいね。 それでは、頑張ってください。

hata_takuro
質問者

お礼

こんにちは。 回答ありがとうございます。 これを参考にさせていただきたいと思います。 今後もよろしくお願いします。

  • Zincer
  • ベストアンサー率43% (88/201)
回答No.1

読める人が読んだら解るかもしれないと思っていたんですが、 >ファイル(行列形式)をプログラムに読み込んで… 行列形式(もしかして配列)のファイルは誰が作成したものですか? 一般的な約束事は無かったと思いますので、作った本人しか解らないと思いますよ。 >次に >ある式に値Aを代入して次の10個の値が出てきたとします。 どうしたら、1つ(?)の式に1つの変数「A」をいれて値が10個も出てくるんですか? 補足頂けますでしょうか?

関連するQ&A