C ++ hypot () - C ++ standardní knihovna

Funkce hypot () v C ++ vrací druhou odmocninu součtu druhé mocniny předaných argumentů.

hypot () prototyp

dvojitá hypotéza (dvojitá x, dvojitá y); float hypot (float x, float y); dlouhá dvojitá hypotéza (dlouhá dvojitá x, dlouhá dvojitá y); Propagovaný prášek (Type1 x, Type2 y); dvojitá hypotéza (dvojitá x, dvojitá y, dvojitá x); // (od C ++ 17) float hypot (float x, float y, float z); // (od C ++ 17) long double hypot (long double x, long double y, long double z); // (od C ++ 17) Propagovaný pow (Type1 x, Type2 y, Type2 y); // (od C ++ 17)

Vzhledem k tomu, že v C ++ 11 je jakýkoli argument předaný hypot () long double, je návratový typ povýšen long double. Pokud ne, je návratový typ Propagovaný double.

 h = √ (x2 + y2

v matematice odpovídá

 h = hypot (x, y);

v programování v C ++.

Pokud jsou předány tři argumenty:

 h = √ (x2 + y2 + z2))

v matematice odpovídá

 h = hypot (x, y);

v programování v C ++.

Tato funkce je definována v hlavičkovém souboru.

hypot () Parametry

Hytpot () přebírá 2 nebo 3 parametry typu s integrovanou nebo s plovoucí desetinnou čárkou.

hypot () návratová hodnota

Hypot () vrací:

  • přepona pravoúhlého trojúhelníku, pokud jsou předány dva argumenty, tj .√(x2+y2)
  • vzdálenost od počátku do (x, y, x), pokud jsou předány tři argumenty, tj .√(x2+y2+z2)

Příklad 1: Jak funguje hypot () v 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; ) 

Když spustíte program, výstup bude:

 hypot (x, y) = 3,74433 hypot (x, yLD) = 6,30617 

Příklad 2: hypot () se třemi argumenty

 #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; )

Poznámka: Tento program bude fungovat pouze v nových kompilátorech, které podporují C ++ 17.

Zajímavé články...