私のTI-84Plus(Silver Edition)では、エラーなしで次のように入力できます。(-1)^(1/3)= -1次のような式を入力すると、非実数の虚数が生成されることもわかっています。 -次のような数:(-1)^。5
さて、私の問題はC#のMathオブジェクトにあります。次のような分数を送信する{1.667, 109.667, 0.667, 120.667} OR {4/3, 111/3, 2/3, 122/3}
と、次のようになります{NaN, NaN, NaN, NaN}
。
MathHelper
有理値をチェックし、制限された入力スイッチに従って答えを返す新しいオブジェクトを作成する必要がありますか?または、私が見逃しているMathオブジェクトの機能はありますか。私は電卓でこれを行うことができます...
PS、私はまだオンラインで同様の質問に出くわしませんでした。したがって、これが重複している場合は、お知らせください;)
【私の新しい見解】
ご協力ありがとうございました!「Microsoft.Solver.Foundation.dll」を4.0ターゲットフレームワークにアップグレードし終えたところ、「Rational」オブジェクトは-1と「Indeterminate」のみを返すように見えました。そして、グーグルで(-1)^(1/2)[nonreal ans]と入力した後、nth-rootsで作業していることに気づきました。したがって、過去にC#で虚数を管理していたことが判明したため、問題は解決しました。
Any even root 2n of a negative number -m will always equal an imaginary number i. (2n√-m)=i
この単純な代数の性質を忘れたなんて信じられない