21xrx.com
2024-12-22 22:09:36 Sunday
登录
文章检索 我的文章 写文章
Java实现开平方根方法及示例代码
2023-06-16 15:15:02 深夜i     --     --
Java 开平方根 Math 牛顿迭代法 二分查找法

开平方根是数学中一个基本的运算,有时我们需要在Java程序中实现这个功能。本文将介绍Java实现开平方根的方法,并提供示例代码。

Java实现开平方根的方法

1. 使用Math.sqrt函数

Java中提供了Math类,其中的sqrt()函数可以用来求平方根。我们可以直接调用该函数来实现开平方根的功能。以下是示例代码:

double i = 16;

double squareRoot = Math.sqrt(i);

System.out.println("平方根为:" + squareRoot);

2. 使用牛顿迭代法

牛顿迭代法是一种数值计算方法,可用于求解方程和函数的零点问题。它可以用来逼近函数的根,也可以用来求解开平方根等问题。以下是示例代码:

public static double sqrt(double c) {

  if (c < 0)

    return Double.NaN;

  double err = 1e-15;

  double t = c;

  while (Math.abs(t - c/t) > err*t) {

    t = (c/t + t) / 2.0;

  }

  return t;

}

double i = 16;

double squareRoot = sqrt(i);

System.out.println("平方根为:" + squareRoot);

3. 使用二分查找法

二分查找法是一种在有序数组中查找某一特定元素的搜索算法。我们可以通过二分查找法来逼近某个数的平方根。以下是示例代码:

public static double sqrt(double c) {

  if (c < 0)

    return Double.NaN;

  double low = 0, high = c;

  double mid = (low + high) / 2;

  while (Math.abs(mid * mid - c) > 1e-12) {

    if (mid * mid > c)

      high = mid;

     else

      low = mid;

    mid = (low + high) / 2;

  }

  return mid;

}

double i = 16;

double squareRoot = sqrt(i);

System.out.println("平方根为:" + squareRoot);

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复