C ++ hypot () - C ++ standardbibliotek

Funktionen hypot () i C ++ returnerer kvadratroden af ​​summen af ​​kvadraten af ​​de argumenter, der er sendt.

hypot () prototype

dobbelt hypot (dobbelt x, dobbelt y); float hypot (float x, float y); lang dobbelt hypot (lang dobbelt x, lang dobbelt y); Forfremmet pow (Type1 x, Type2 y); dobbelt hypot (dobbelt x, dobbelt y, dobbelt x); // (siden C ++ 17) float hypot (float x, float y, float z); // (siden C ++ 17) lang dobbelt hypot (lang dobbelt x, lang dobbelt y, lang dobbelt z); // (siden C ++ 17) Promoveret pow (Type1 x, Type2 y, Type2 y); // (siden C ++ 17)

Da C ++ 11, hvis et argument, der sendes til hypot () long double, er returneringstypen Promoted long double. Hvis ikke, er returtypen Promoveret double.

 h = √ (x2 + y2

i matematik svarer til

 h = hypot (x, y);

i C ++ programmering.

Hvis der gives tre argumenter:

 h = √ (x2 + y2 + z2))

i matematik svarer til

 h = hypot (x, y);

i C ++ programmering.

Denne funktion er defineret i headerfilen.

hypot () Parametre

Hytpot () tager enten 2 eller 3 parametre af integreret eller flydende punkt-type.

hypot () Return Value

Hypoten () returnerer:

  • hypotenusen i en retvinklet trekant, hvis to argumenter er gået, dvs. .√(x2+y2)
  • afstanden fra udgangspunktet til den (x, y, x) hvis tre argumenter føres, dvs. .√(x2+y2+z2)

Eksempel 1: Hvordan fungerer hypot () i 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; ) 

Når du kører programmet, vil output være:

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

Eksempel 2: hypot () med tre argumenter

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

Bemærk: Dette program kører kun i nye compilers, der understøtter C ++ 17.

Interessante artikler...