0

ソース コードの場所は次のとおりです (Dropbox を使用)。

問題は、ゼロを適切に評価しないという事実にあります。

例:x^2-2x-8のゼロに等しいはずです{-4, 2}が、代わりに のような長い指数値が得られます-4+34534....E-25<i>i</i>

単根の多項式でも機能します(such as x<sup>2</sup>+4x+4, root = {-2})

Can anyone spot the problem, it's been frustrating me for weeks. This is NOT a homework assignment, this is something I work on in my free time.

4

1 に答える 1

0

以前にこのような問題に遭遇したことがあり、別の (数学指向の) 言語に切り替えることにしました。double の代わりに float を使用することもできますが、これでうまくいくかもしれませんが、おそらくそれ自体の問題が生じるでしょう。または、1E-10 よりも小さいものまたはそれらの線に沿ったものを除外するメソッドを作成することもできます。別の代替手段(ここでは関連する場合と関連しない場合があります)は、JLinkを使用することです。

于 2012-05-02T02:52:31.920 に答える