Funcția hypot () din C ++ returnează rădăcina pătrată a sumei pătratului argumentelor trecute.
hipot () prototip
dublu hipot (dublu x, dublu y); float hipot (float x, float y); hipot dublu lung (dublu lung x, dublu lung y); Pow promovat (Type1 x, Type2 y); dublu hipot (dublu x, dublu y, dublu x); // (din C ++ 17) float hipot (float x, float y, float z); // (de la C ++ 17) hipot dublu lung (dublu lung x, dublu lung y, dublu lung z); // (de la C ++ 17) Pow promovat (Type1 x, Type2 y, Type2 y); // (din C ++ 17)
Din moment ce C ++ 11, dacă vreun argument trecut la hypot () este long double
, tipul de returnare Promovat este long double
. Dacă nu, tipul de returnare Promovat este double
.
h = √ (x2 + y2
în matematică este echivalent cu
h = hipot (x, y);
în programarea C ++.
Dacă sunt trecute trei argumente:
h = √ (x2 + y2 + z2))
în matematică este echivalent cu
h = hipot (x, y);
în programarea C ++.
Această funcție este definită în fișierul antet.
hypot () Parametri
Hytpot () ia fie 2 sau 3 parametri de tip integral sau virgulă mobilă.
hypot () Valoare de returnare
Hipot () revine:
- ipotenuza unui triunghi unghiular dacă sunt trecute două argumente, adică .
√(x2+y2)
- distanța de la origine la (x, y, x) dacă sunt trecute trei argumente, adică .
√(x2+y2+z2)
Exemplul 1: Cum funcționează hypot () în C ++?
#include #include using namespace std; int main() ( double x = 2.1, y = 3.1, result; result = hypot(x, y); cout << "hypot(x, y) = " << result << endl; long double yLD, resultLD; x = 3.52; yLD = 5.232342323; // hypot() returns long double in this case resultLD = hypot(x, yLD); cout << "hypot(x, yLD) = " << resultLD; return 0; )
Când rulați programul, ieșirea va fi:
hipot (x, y) = 3.74433 hipot (x, yLD) = 6.30617
Exemplul 2: hypot () cu trei argumente
#include #include using namespace std; int main() ( double x = 2.1, y = 3.1, z = 23.3, result; result = hypot(x, y, z); cout << "hypot(x, y, z) = " << result << endl; return 0; )
Notă: Acest program va rula numai în noi compilatoare care acceptă C ++ 17.