std::hypot
Template:cpp/numeric/math/sidebar Template:ddcl list begin <tr class="t-dsc-header">
<td><cmath>
<td></td> <td></td> </tr> <tr class="t-dcl ">
<td ><td > (1) </td> <td > (since C++11) </td> </tr> <tr class="t-dcl ">
<td ><td > (2) </td> <td > (since C++11) </td> </tr> <tr class="t-dcl ">
<td ><td > (3) </td> <td > (since C++11) </td> </tr> <tr class="t-dcl ">
<td ><td > (4) </td> <td > (since C++11) </td> </tr> Template:ddcl list end
Computes the square root of the sum of the squares of x
and y
, without undue overflow or underflow at intermediate stages of the computation. This is the length of the hypotenuse of a right-angled triangle with sides of length x
and y
, or the distance of the point (x,y)
from the origin (0,0)
, or the magnitude of a complex number x+iy
4) If any argument has integral type, it is cast to Template:cpp. If any other argument is Template:cpp, then the return type is Template:cpp, otherwise it is Template:cpp.
Contents |
Parameters
x | - | floating point value |
y | - | floating point value |
Return value
The hypotenuse of a right-angled triangle, √x2+y2.
Exceptions
If the result overflows, a range error may occur and Template:cpp may be raised.
If the result is subnormal, an underflow error may occur and Template:cpp may be raised.
Notes
Typical implementation strategy is to calculate an equivalent of u√1+(v |
u |
u
is Template:cpp and v
is Template:cpp.