有一个公式,我需要用我的应用程序:here隔离实数复数在java中
部分SQRT(5-25),可正可负,当然,当负我们得到了java不能处理的虚部。
我四处搜寻找到一个复杂的类来处理,但只发现基本操作(+ - * /)。
我怎样才能在Java解决这个知道我只需要得到真正的一部分吗?(虚有没有意义)
我精确我开发的Android平台
(一张贴在堆栈,因为它是关于在java中的应用,但如果它属于math.se,告诉我)
有一个公式,我需要用我的应用程序:here隔离实数复数在java中
部分SQRT(5-25),可正可负,当然,当负我们得到了java不能处理的虚部。
我四处搜寻找到一个复杂的类来处理,但只发现基本操作(+ - * /)。
我怎样才能在Java解决这个知道我只需要得到真正的一部分吗?(虚有没有意义)
我精确我开发的Android平台
(一张贴在堆栈,因为它是关于在java中的应用,但如果它属于math.se,告诉我)
您可以简单地计算以前的东西:
plot 25-20 +((2Pi0。3²)/(Pi10²)的Sqrt [2 * 980(1+(Pi10²)/(Pi10²))] T)2 0-38
或
情节25-20 +((2 *0.3² )/(10 2)的Sqrt [2 * 980(1 + 1)] T)2 0-38
或
25 - 20 + 4 * 0.0000081 * 3920 * T^2为0〜38(我有一些因素是错误的,但你明白了)
只是应用基本的数学常量,并应用第二个双目公式后删除中间(虚部)。
与复数无关。
取一般复数的平方根可以用实数的基本算术运算(加上实数的平方根): (一种技术是利用De Moivre定理:可以写出任何复数a + bi 10例为其中
r = sqrt(a^2 + b^2), cos θ = a/r, sin θ = b/r
更新:公式是渊源由于欧拉,而棣莫弗定理是
(a + ib)ⁿ = rⁿ(cos nθ + i sin nθ)
你感到困惑的数学。 -25的平方根是25 *( - 1)的平方根,即25 *的平方根的平方根,即5i。该数字的实数部分为0.
如果您想要5,只需检查数字的符号是否“扎根”,如果是负数,则更改它。
这是一个负实数而不是一般复数的平方根。 – 2011-06-08 10:02:23
你是对的,但公式说sqrt(5-25),这是我* sqrt(20)。 – duffymo 2011-06-08 10:03:40
整数的平方根将成为整数或实数为零的复数。负整数的平方根的实部为零。总是。
所以......
public double realPartOfSquareRoot(int i) {
return (i > 0) Math.sqrt(i) : 0;
}
但我怎么解决这个问题?如果我将squareroot替换为0,我得不到一个好结果。我是否假设虚构部分对公式的其余部分做了一些真正的事情。
我希望是这样! (丢弃虚部的想法对我来说没有多大意义......但我认为你有充分的理由这样做。)
真正的答案是找到一个Java库,它将执行复杂的算术。我从来没有需要使用它,但第一个要检查的应该是Apache Commons Maths库。
但我怎么解决这个问题,如果我用0代替squareroot,我没有得到好的结果,所以我想虚部做了一些与真正的公式 – eephyne 2011-06-08 10:09:57
说“Java无法处理它”是不正确的。从平方根返回双精度的语言不能处理它,但如果你有一个Complex
类,这不是问题。 Python有一个内置的;使用Java编写一个很容易。
我认为它会抛出一些异常,当它遇到一个负面...也可以使用try catch来处理它,只需将它转换为+ ve也不常用方式找到它的平方根... – ngesh 2011-06-08 10:00:02
真实部分是真实的想象,如果不是,那么你将能够采取两个并通过邮局发送给我。 – 2011-06-08 10:08:09