C++中的hypot()函数返回所传递的参数平方和的平方根。它找到斜边,斜边是直角三角形的最长边。它由以下公式计算:
h = sqrt(x2+y2)
其中x和y是三角形的另外两个边。
用法: double hypot(double x, double y); float hypot(float x, float y); long double hypot(long double x, long double y);
例子:
Input:x=3, y=4 Output:5 Input:x=9, y=10 Output:13.4536
说明
头文件:cmath
参数:hypot()采用2或3个整数或浮点型参数。
返回:
1.如果传递了两个参数,则为直角三角形的斜边。
2.如果传递了三个参数,则从原点到(x,y,x)的距离
异常或错误
1. hypot(x,y),hypot(y,x)和hypot(x,-y)是等效的。
2.如果参数之一为0,则hypot(x,y)等效于使用非零参数调用的fab。3.如果参数之一为无限或未定义,hypot(x,y)返回未定义。
示例应用程序:给定另一边的两个边,找到直角三角形的斜边。
// CPP program to illustrate
// hypot() function
#include <cmath>
#include <iostream>
using namespace std;
// Driver Program
int main()
{
double x = 9, y = 10, res;
res = hypot(x, y);
// hypot() returns double in this case
cout << res << endl;
long double a, b, result;
a = 4.525252;
b = 5.767676;
// hypot() returns long double in this case
result = hypot(a, b);
cout << result;
return 0;
}
输出:
13.4536 7.33103
hypotf() function
hypotf()函数与hypot函数相同,唯一的区别是该函数的参数和返回类型为浮点型。附加到“ hypotf”后面的“ f”字符表示float,它表示函数的参数类型和返回类型。
Syntax float hypotf(float x);
hypotf()的C++程序实现
在此,为变量分配浮点类型,否则会发生类型不匹配错误。
// CPP program to illustrate
// hypotf() function
#include <cmath>
#include <iostream>
using namespace std;
// Driver Program
int main()
{
float x = 9.3425, y = 10.0987, res;
// hypotf() takes float values and returns float
res = hypotf(x, y);
cout << res << endl;
return 0;
}
输出:
13.7574
hypotl() function
hypotl()函数与hypot函数相同,唯一的区别是该函数的参数和返回类型为long double类型。附加在'hypotl'上的'l'字符表示long double,它表示参数类型和返回类型函数的
Syntax long double hypotl(long double x);
hypotl()的C++程序实现
在此,为变量分配了long double类型,否则会发生类型不匹配错误。
// CPP program to illustrate
// hypotl() function
#include <cmath>
#include <iostream>
using namespace std;
// Driver Program
int main()
{
long double x = 9.3425453435, y = 10.0987456456, res;
// hypotl() takes long double values and returns long double
res = hypotl(x, y);
cout << res << endl;
return 0;
}
输出:
13.7575
相关用法
注:本文由纯净天空筛选整理自AyushSaxena大神的英文原创作品 hypot(), hypotf(), hypotl() in C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。