hypot(), hypotf(), hypotl() in C++

24 Oct, 2019
The hypot() function in C++ returns the square root of sum of square of arguments passed. It finds the hypotenuse, hypotenuse is the longest side of a right angled triangle. It is calculated by the formula :
 h = sqrt(x2+y2)
where x and y are the other two sides of the triangle.
Syntax:
double hypot(double x, double y);
float hypot(float x, float y);
long double hypot(long double x, long double y);

Examples:
Input : x=3, y=4
Output :5

Input :x=9, y=10
Output :13.4536

Explanation
Header File : cmathParameters : The hypot() takes either 2 or 3 parameters of integral or floating-point type.Returns :1. The hypotenuse of a right-angled triangle if two arguments are passed.2. Distance from the origin to the (x, y, x) if three arguments are passed
Exceptions or Errors1. hypot(x, y), hypot(y, x), and hypot(x, -y) are equivalent.2. If one of the arguments is 0, hypot(x, y) is equivalent to fabs called with the non-zero argument3. If one of the arguments is infinite or undefined, hypot(x, y) returns undefined.
Example Application : Finding the hypotenuse of a right angle triangle given 2 of its other sides.
// CPP program to illustrate// hypot() function#include <cmath>#include <iostream>using namespace std;// Driver Programint 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;}
Output:
13.4536
7.33103

hypotf() function
hypotf() function is same as the hypot function.The only difference is that the parameter and return type of the function is float type. The ‘f‘ character appended to ‘hypotf‘ stands for float and it signify the parameter type and return type of the function.
Syntax
float hypotf(float x);

C++ program implementation of hypotf()Here, variables are assigned float type otherwise type mismatch error occurs.
// CPP program to illustrate// hypotf() function#include <cmath>#include <iostream>using namespace std;// Driver Programint 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;}
Output:
13.7574

hypotl() function
hypotl() function is same as the hypot function.The only difference is that the parameter and return type of the function is long double type.The ‘l‘ character appended to ‘hypotl‘ stands for long double and it signify the parameter type and return type of the function.
Syntax
long double hypotl(long double x);

C++ program implementation of hypotl()Here, variables are assigned long double type otherwise type mismatch error occurs.
// CPP program to illustrate// hypotl() function#include <cmath>#include <iostream>using namespace std;// Driver Programint 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;}
Output:
13.7575

Akanksha_Rai
CPP-Library
C++
CPP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Templates in C++ with Examples
Operator Overloading in C++
Queue in C++ Standard Template Library (STL)
Virtual Function in C++
unordered_map in C++ STL
Polymorphism in C++
Socket Programming in C/C++
C++ Classes and Objects
vector erase() and clear() in C++
Copy Constructor in C++