hypot (), hypotf (), hypotl () в C ++

Опубликовано: 31 Декабря, 2021

Функция hypot () в C ++ возвращает квадратный корень из суммы квадратов переданных аргументов. Он находит гипотенузу, гипотенуза - это самая длинная сторона прямоугольного треугольника. Рассчитывается по формуле:

 h = sqrt (x 2 + y 2 )

где x и y - две другие стороны треугольника.

Синтаксис:
двойная гипотеза (двойной x, двойной y);
гипотеза с плавающей точкой (float x, float y);
длинная двойная гипотеза (длинная двойная x, длинная двойная y);

Примеры:

Ввод: x = 3, y = 4
Выход: 5

Ввод: x = 9, y = 10.
Выход: 13,4536

Объяснение

Header File : cmath
Parameters : The hypot() takes either 2 or 3 parameters of integral or floating-point type.
Returns :
1. The hypotenuse of a right-angled triangle if two arguments are passed.
2. Distance from the origin to the (x, y, x) if three arguments are passed

Исключения или ошибки
1. гипотеза (x, y), гипотеза (y, x) и гипотеза (x, -y) эквивалентны.
2. Если один из аргументов равен 0, гипотеза (x, y) эквивалентна fabs, вызываемой с ненулевым аргументом.
3. Если один из аргументов бесконечен или не определен, гипотеза (x, y) возвращает значение undefined.

Пример применения: поиск гипотенузы прямоугольного треугольника по двум другим его сторонам.

Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.

// CPP program to illustrate
// hypot() function
#include <cmath>
#include <iostream>
using namespace std;
// Driver Program
int main()
{
double x = 9, y = 10, res;
res = hypot(x, y);
// hypot() returns double in this case
cout << res << endl;
long double a, b, result;
a = 4.525252;
b = 5.767676;
// hypot() returns long double in this case
result = hypot(a, b);
cout << result;
return 0;
}

Выход:

13,4536
7,33103

функция hypotf ()

Функция hypotf () такая же, как и функция hypot, с той лишь разницей, что параметр и возвращаемый тип функции относятся к типу с плавающей запятой. Символ «f», добавленный к «hypotf», обозначает число с плавающей запятой и обозначает тип параметра и тип возвращаемого значения функции.

Синтаксис
float hypotf (float x);

Программная реализация функции hypotf () на C ++
Здесь переменным присваивается тип с плавающей запятой, в противном случае возникает ошибка несоответствия типов.

// CPP program to illustrate
// hypotf() function
#include <cmath>
#include <iostream>
using namespace std;
// Driver Program
int main()
{
float x = 9.3425, y = 10.0987, res;
// hypotf() takes float values and returns float
res = hypotf(x, y);
cout << res << endl;
return 0;
}

Выход:

13,7574

функция hypotl ()

Функция hypotl () аналогична функции hypot. Единственное отличие состоит в том, что параметр и возвращаемый тип функции имеют тип long double. Символ l, добавленный к hypotl, обозначает long double и обозначает тип параметра и тип возвращаемого значения функции.

Синтаксис
длинный двойной гипотль (длинный двойной х);

Программная реализация hypotl () на C ++
Здесь переменным присваивается тип long double, в противном случае возникает ошибка несоответствия типов.

// CPP program to illustrate
// hypotl() function
#include <cmath>
#include <iostream>
using namespace std;
// Driver Program
int main()
{
long double x = 9.3425453435, y = 10.0987456456, res;
// hypotl() takes long double values and returns long double
res = hypotl(x, y);
cout << res << endl;
return 0;
}

Выход:

13,7575
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .
C++