用C++编程求一个数的平方根
时间: 2023-03-31 15:01:51 浏览: 136
你好,可以使用数学库中的sqrt函数来求一个数的平方根,例如:
```
#include <stdio.h>
#include <math.h>
int main() {
double num, result;
printf("请输入一个数:");
scanf("%lf", &num);
result = sqrt(num);
printf("%lf的平方根是%lf\n", num, result);
return ;
}
```
以上是一个简单的示例程序,当用户输入一个数后,程序会调用sqrt函数来计算这个数的平方根,并输出结果。希望对你有帮助。
相关问题
用C++语言编程求一个数的平方根
你好,可以使用数学库中的sqrt函数来求一个数的平方根,例如:
```
#include <stdio.h>
#include <math.h>
int main() {
double num, result;
printf("请输入一个数:");
scanf("%lf", &num);
result = sqrt(num);
printf("%lf的平方根是%lf\n", num, result);
return ;
}
```
希望能对你有所帮助。
C++模板元编程求浮点数平方根
C++11 提供了 `std::sqrt()` 函数可以计算浮点数的平方根,但如果你想使用模板元编程来计算浮点数平方根,可以使用递归方式实现牛顿迭代法,代码如下:
```c++
template <double x, double y>
struct abs {
static constexpr double value = (x > y) ? (x - y) : (y - x);
};
template <double x, double y>
struct sqrt_recursion {
static constexpr double value = sqrt_recursion<x, (y + x / y) / 2>::value;
};
template <double x>
struct sqrt_recursion<x, (x + 1) / 2> {
static constexpr double value = (x + 1) / 2;
};
template <double x>
struct Sqrt {
static constexpr double value = sqrt_recursion<x, x / 2 + 1>::value;
};
```
这个模板可以通过 `Sqrt<x>::value` 来得到 x 的平方根。需要注意的是,这个模板实现的是浮点数的平方根,因此需要使用 `double` 类型来存储结果。