当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ hypot(), hypotf(), hypotl()用法及代码示例


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++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。