java表示a的平方根不使用math
时间: 2024-06-06 20:11:38 浏览: 40
库怎么写?
可以使用牛顿迭代法来计算a的平方根。具体的算法可以参考以下代码:
public static double sqrt(double a) {
if (a < 0) throw new IllegalArgumentException("Square root of negative number");
double err = 1e-15;
double t = a;
while (Math.abs(t - a/t) > err * t) {
t = (a/t + t) / 2.0;
}
return t;
}
相关问题
JAVA使用迭代法求平方根
JAVA使用迭代法求平方根的代码如下:
```java
public static double sqrt(double x) {
if (x < 0) {
throw new IllegalArgumentException("x不能是负数");
}
double err = 1e-15; // 精度
double t = x;
while (Math.abs(t - x/t) > err*t) {
t = (x/t + t) / 2.0;
}
return t;
}
```
该代码使用的是牛顿迭代法,通过不断逼近x的平方根来求解。在每次迭代中,通过t = (x/t + t) / 2.0来更新t的值,直到t的值与x/t的值的差小于给定的精度err。最终返回t,即为x的平方根。
java scala中开平方根的函数
在Java和Scala中,计算平方根通常会用到Math类提供的sqrt()函数。以下是两个语言的例子:
**Java**:
```java
import java.lang.Math;
// 计算给定数值的平方根
double squareRoot(double num) {
return Math.sqrt(num);
}
// 使用示例
double result = squareRoot(16); // 结果将是4.0
```
在Java中,`Math.sqrt()`接受一个`double`类型的参数并返回其平方根。
**Scala**:
```scala
import math.sqrt
// Scala中也直接使用math.sqrt函数
def sqrtInScala(num: Double): Double = {
sqrt(num)
}
// 示例
val resultScala = sqrtInScala(16.0) // 结果也是4.0
```
在Scala中,`sqrt`方法同样属于`math`包下的函数,可以直接应用到`Double`类型上。