|
前の 投稿で
マトリックスを ガウスの 掃きだし方で 解いた所
正確には 5.5 E-9 を プログラムは
-1.5E-15 と 表示し そのまま
計算を つずけて オカシナ 回答が 出ました
そこで
計算途中の 数値
TK(a) に 以下のように 条件を 付け加えました
if abs(TK(a))<0.000001 then goto 10 else goto 20
10
TK(a)=0.000000000000000000000000000000
20
それで
この プログラムは 一応 正確な 答えを 出しました
しかし
時々 計算された 数値に -34298675431657
等と 一目に プログラムの 暴走と 感じられる
数値が 計算されます
この場合
どの様に プログラムを 止めるのでしょうか ???
例えば
if ABS(TK(a)>100000000 then goto 30 else goto 40
30
print " error "
input xxx
40
例えば プログラムで ロボットを 動かす場合
ロボットは プログラムの ミスが 解りませんので
異常の時は 止める 場合です
|
|