21xrx.com
2025-04-15 12:57:26 Tuesday
文章检索 我的文章 写文章
C++中如何表示开根号?
2023-06-27 15:41:26 深夜i     22     0
C++ 开方 表示

在C++中,开平方根的表示方法有多种,常用的有以下两种方法:

1. 使用sqrt函数

sqrt是C++中内置的一个数学函数,用于计算平方根。其函数原型定义如下:

double sqrt(double x);

其中,x是要求平方根的一个实数类型的数值,返回值是对应的平方根,类型为double。使用时需要包含cmath头文件。

例如,要求计算16的平方根,可以使用如下代码:

#include <cmath>
#include <iostream>
using namespace std;
int main()
{
  double x = 16;
  double result = sqrt(x);
  cout << "The square root of " << x << " is " << result << endl;
  return 0;
}

输出结果为:

The square root of 16 is 4

2. 使用自定义函数

如果需要支持更多的根次,可以自定义一个函数来实现。

以求n次方根为例,代码如下:

// 求n次方根
double root(double x, int n)
{
  if (n == 0)
    // 0次方根没有定义
    return 0;
   else if (n % 2 == 0 && x < 0)
    // 偶次方根要求被开方数非负数
    return 0;
   else {
    // 使用牛顿迭代法求解
    double result = x / n;
    double last_result;
    do {
      last_result = result;
      result = (n - 1.0) * last_result / n + x / (n * pow(last_result, n - 1.0));
    } while (abs(last_result - result) > 0.0001);
    return result;
  }
}

其中,x是被开方数,n是根次。如果要求平方根,n=2。

例如,要求计算27的立方根,可以使用如下代码:

#include <iostream>
using namespace std;
double root(double x, int n);
int main()
{
  double x = 27;
  int n = 3;
  double result = root(x, n);
  cout << "The " << n << "th root of " << x << " is " << result << endl;
  return 0;
}
double root(double x, int n)
见上面的代码

输出结果为:

The 3th root of 27 is 3

以上就是C++中表示开平方根的两种方法。需要根据实际需求选择合适的方式来实现。

  
  

评论区