C ++ hypot () - Biblioteca standard C ++

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.

Articole interesante...