%1.lib%1.exeこれを見て間違いに気が付きました。表示が1E+08になっていました。浮動小数点の表示形式ですね。単精度のように思われます。いいつつ、特にファイル書き込みの部分はろくに動作確認をしていないのだけど。ファイルがキチンと出来ました。素数の個数が私のと違いますね。素数では無いと思います。今日は眠いのでこれ以上の調査は明日以降ということで。単精度のように思われます。おっしゃるとおりです。変数を全て単精度指定に変更するときに修正をもらしたようです。素数では無いと思います。こっちは大問題ですね。仕様どおりの挙動をしないのですから。倍精度から単精度に精度を落としたことが悪いのか、それとも割り算と掛け算の誤差の問題か。いつ調査できるかわかりませんが、解決は図りたいと思います。素数では無いと思います。こっちは大問題ですね。仕様どおりの挙動をしないのですから。CPUエミュレーション等のバグを疑いました。試したのですが、結果は同じ。固まってしまいました。次に疑ったのが、BASICコンパイラが壊れていないか。BASICC.COM中身が壊れているることもありうるので、98実機での結果が知りたいところですね。「素数」と表示されます。「合成数」と表示されます。文の変数を単精度にしただけかな。うーん、これを反映させても改善しない。さんへのコメント不具合の原因がわかりました。関数の結果判定に問題が有ったようです。足したら問題が解消されました。計算精度の問題か、最小桁が切り捨てられているのでしょうか。いくつ足せばいいのか桁を変えて試してみました。問題のような気がしますが、実機でどうなるか知りたいですね。1自分で実験できないのにあれこれ言って申し訳ありません。N88P.BASとPN88.BAS、konnoさん的には「若干修正」かもしれませんが、内部的にはもしかしたら大幅な修正かもしれません。ここを単精度指定にしたらどうなるか、ということ。ここを単精度指定にしたらどうなるか、ということ。良いテストプログラムを作ったので上げます。倍精度の方が収束するのに1回多く掛かっています。どちらでも計算は倍精度でやっているのがわかります。計算も単精度なのか、それとも表示だけなのか?倍精度では収束したのにさらにもう1回多く計算しています。文にしても同じでした。素数と誤判定しているのです。このことから私は、「>」や「>=」などの比較式で単精度の時だけ誤差が出ていると疑ったのです。V6.0に問題が有るかどうかは、実機で確認する以外にわからないと思います。これ、あとで私も検証してみます。どちらでも計算は倍精度でやっているのがわかります。ここですでに値が異なります。表示だけ倍精度、という可能性が濃厚。N88の場合、仕様では、引数の型が結果の型、ということになっています。いう単精度型で割り算をしています。してみたら、もしかしたら違いが出てくる可能性があります。うちの母、風邪気味だというのに買い物に行きたいのだとか。母と同居しているうちの弟、免許すら持っていないので、その手の案件は私が対応。いうことで、まもなく連れ出されてしまいますが、その前に。うちのN88BASIC、コンパイラはありません。タイムスタンプは以下。13:51ん〜、ライブラリのほう、もしかしたらバージョンが古いかも。良いテストプログラムを作ったので上げます。自動で変換されてしまっていました。したらkonnoさんのところでも、この手の意図せざる自動変換が発生しているかもしれません。コンパイラのほうでも。たたいて、自動変換の有無を確認されたほうがいいでしょう。させたら、あれ?konnoさんのところと実行結果が異なる。何が異なるって、途中経過が一切表示されない。リストを見たら、結果表示がループの外に出ている。いうトリックはやめて欲しいけど、でも私も良くやるので人のことは言えない。文を3123行に持ってきて、ここで時間切れ。何時ぐらいになるかなぁ。