こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

BASIC数値解析プログラムについて。

初めまして、私は大学でBASIC初心者でN88互換BASICでのプログラミングを今年から勉強しています。↓のプログラムで収束過程の計算結果を実行画面に表示させたくてFOR~NEXT文でいろいろ試しているのですがエラーが出てしまいます。他の具体的な方法が浮かばないです。初歩的な質問でしたら申し訳ないのですが、BASIC経験者、もしくは現在やられている方でどなたか私にアドバイスをしていただけると助かります。

(x^2-a=0のaの根を求めるニュートン法のプログラムです)
120 REM*******ニュートン・ラフソン法*********
130 FOR I = 1 TO 6
132 READ X0
134 GOSUB 140
136 NEXT I
138 END
140 PRINT "試行値は";X0
145 N=1
150 ER=.00001
180 FX=X0*X0-333
190 DFX=2*X0
200 X1=X0-FX/DFX
220 IF ABS(X1-X0)<ER THEN 250
230 X0=X1 :N=N+1
240 GOTO 180
250 PRINT X1,N
280 RETURN
300 REM *************試行値*************
310 DATA 1,5,10,50,100,500

投稿日時 - 2006-05-24 18:21:34

QNo.2172518

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

「ぱっ」と簡単に見たところ
150 ER=.00001

150 ER=0.00001
にすればいいような気がしますが・・・・。

あと、エラーが発生した行を教えてくれれば、もう少し詳しく教えられるのですが・・・・。

投稿日時 - 2006-05-24 20:06:53

補足

すいません、質問の内容に不備がありました。上に示したプログラムにエラーは出ません。「収束した計算結果」は表示されるのですが、「収束過程の計算」が表示されません。その点についてお聞きしたい次第です。

投稿日時 - 2006-05-24 22:13:18

ANo.1

エラーは出ないみたいですが、
333 を A のように変数にしたいということでしたら、INPUT 文を使えばイイと思いますが。

投稿日時 - 2006-05-24 18:57:42

補足

roudenさんの欄に書きました補足と同じです。

投稿日時 - 2006-05-24 22:19:03

あなたにオススメの質問