トップページ⇒tech
10コメント3KB

N88BASICの初歩的な質問です

■ このスレッドは過去ログ倉庫に格納されています
0001初心者NGNG
学校の課題である方程式の解を出すプログラムを
作って来いと言うのがあるのですが、上手く行かなくて
少し困ってます。以下のプログラムのどこらへんが変ですか?

10 PRINT "x^3 -6x^2 -12x +10 = 0 の解の一つは"
20 A = x^3 -6*x^2 -12*x +10
30 x = -5
160 x = x +0.0001
170 IF A<0 GOTO 160
180 x = x -0.0001
190 PRINT "x=";x

ちなみに、「4桁の精度で解け!」と言われてますが
x=-5 と出てきてしまうので、、、
ホント初歩的なミスなのでしょうがお願いします!!!
0002デフォルトの名無しさんNGNG
10 PRINT "x^3 -6x^2 -12x +10 = 0 の解の一つは"
30 x = -5
60 x = x +0.0001
90 A = x^3 -6*x^2 -12*x +10
170 IF ABS(A)>0.0001 GOTO 60
180 x = x -0.0001
190 PRINT "x=";x

こんな感じかね、170行のABSは絶対値のつもりだけどN88BASICなん
て忘れてるから関数名違うかも。
0003デフォルトの名無しさんNGNG
1の問題はコマンド覚えたての学生に出す問題ではないよ。難しすぎ。

10 ctmax=1000:gosa=0.0001:low=-2000:high=2000
20 x=(low+high)/2
30 IF (ct=ctmax) OR (x^3-6*x^2-12*x+10=0) OR (abs(high-low)<abs(low*gosa)) THEN 80
40 IF 0<x^3-6*x^2-12*x+10 THEN high=x ELSE low=x
50 x=(low+high)/2
60 ct=ct+1
70 GOTO 30
80 PRINT "x=";x

違うところは適当に訂正しておいて。精度の処理とか。
0004>3NGNG
10 ctmax=1000:gosa=0.0001:low=-2000:high=2000
20 x=(low+high)/2
30 IF ct=ctmax OR abs(high-low)<gosa THEN 80
40 IF 0<x^3-6*x^2-12*x+10 THEN high=x ELSE low=x
50 x=(low+high)/2
60 ct=ct+1
70 GOTO 30
80 PRINT "x=";x

30行目は上のように変更すると良し
0005デフォルトの名無しさんNGNG
時間的に一致しているが、
N98ベーシックを作ろうってスレ立てたの俺じゃないからね。
0006デフォルトの名無しさんNGNG
>>5
つまり君が作ったって事ね。
0007デフォルトの名無しさんNGNG
>>4

おお、美しい
0008デフォルトの名無しさんNGNG
>>1=5
uzeeeeeよヴォケ。クソスレ立てんな。
>http://piza.2ch.net/test/read.cgi?bbs=tech&key=990082077
ここで聞きゃいいだろうが、厨房。
>>2-4
答えてんじゃねぇよ。
0009デフォルトの名無しさんNGNG
みんなvaca
0010デフォルトの名無しさんNGNG
みんなJAVA
■ このスレッドは過去ログ倉庫に格納されています