2012-05-02 1 views
0

Hereは、Dropboxを使用したソースコードの場所です。Polynomial.javaのゼロメソッドの問題

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

たとえば、x^2-2x-8は、{-4, 2}の0と等しいはずですが、代わりに-4+34534....E-25<i>i</i>のような長い指数値を取得します。

それは数週間のために私をイライラされています、誰もが問題を見つけることができ、単一の根

(such as x<sup>2</sup>+4x+4, root = {-2})と多項式のための作業を行います。これはではなく私は自由な時間に仕事をしている宿題です。

+0

コードスニペットを追加したいと思うかもしれませんが、あなたが提供するリンクは私のためには機能しません。 – Rachel

+0

今すぐお試しください。スニペットを追加しますが、数百行になるでしょう。 –

+0

あなたのコードは二次方程式に複雑な解を扱いますか?投稿した内容から、あなたのコードは-4 +(3e-25 i)を返していると思います。これは、あなたが探している答えである-4 +(0e0 i)に本当に近いです。 –

答えて

0

これまでのような問題が発生し、別の(数学指向の)言語に切り替えることにしました。あなたはダブルスの代わりに浮動小数点を使ってみることができますが、それはトリックを行うかもしれませんが、おそらく自分自身の問題を引き起こすでしょう。あるいは、1E-10よりも小さいものをフィルタリングするメソッドや、それらのラインに沿ったものを書くことができます。もう1つの選択肢(ここでは関連性があるかもしれません)は、JLinkを使用することです。

+0

私はMathematicaのコピーを持っていないし、それを購入するつもりはない。だから私はJLinkを利用できません。 –