Spec-Zone.ru › C

tanh, tanhf, tanhl

Defined in header <math.h>
float       tanhf( float arg );
(1) (since C99)
double      tanh( double arg );
(2)
long double tanhl( long double arg );
(3) (since C99)
Defined in header <tgmath.h>
#define tanh( arg )
(4) (since C99)
1-3) Вычисляет гиперболический тангенс arg.
4) Универсальный макрос типа: Если аргумент имеет тип long double, вызывается tanhl. В противном случае, если аргумент имеет целочисленный тип или тип double, вызывается tanh. В противном случае вызывается tanhf. Если аргумент комплексный, макрос вызывает соответствующую комплексную функцию (ctanhf, ctanh, ctanhl).

Параметры

arg - значение с плавающей точкой, представляющее гиперболический угол

Значение возврата

Если ошибок не произошло, возвращается гиперболический тангенс arg (tanh(arg), или earg-e-arg/earg+e-arg).

Если возникает ошибка диапазона из-за потери точности, возвращается правильный результат (после округления).

Обработка ошибок

Об ошибках сообщается, как указано в math_errhandling.

Если реализация поддерживает арифметику с плавающей точкой IEEE (IEC 60559),

  • если аргумент равен ±0, возвращается ±0
  • Если аргумент равен ±∞, возвращается ±1
  • если аргумент равен NaN, возвращается NaN

Примечания

POSIX определяет, что в случае потери точности возвращается arg, а если это не поддерживается, возвращается значение, определяемое реализацией и не превышающее DBL_MIN, FLT_MIN и LDBL_MIN.

Пример

#include <stdio.h>
#include <math.h>
 
int main(void)
{
    printf("tanh(1) = %f\ntanh(-1) = %f\n", tanh(1), tanh(-1));
    printf("tanh(0.1)*sinh(0.2)-cosh(0.2) = %f\n", tanh(0.1) * sinh(0.2) - cosh(0.2));
    // special values
    printf("tanh(+0) = %f\ntanh(-0) = %f\n", tanh(0.0), tanh(-0.0));
}

Вывод:

tanh(1) = 0.761594
tanh(-1) = -0.761594
tanh(0.1)*sinh(0.2)-cosh(0.2) = -1.000000
tanh(+0) = 0.000000
tanh(-0) = -0.000000

Справочные материалы

  • Стандарт C11 (ISO/IEC 9899:2011):
    • 7.12.5.6 Функции tanh (с. 242)
    • 7.25 Универсальная математика <tgmath.h> (с. 373-375)
    • F.10.2.6 Функции tanh (с. 520)
  • Стандарт C99 (ISO/IEC 9899:1999):
    • 7.12.5.6 Функции tanh (с. 222-223)
    • 7.22 Универсальная математика <tgmath.h> (с. 335-337)
    • F.9.2.6 Функции tanh (с. 457)
  • Стандарт C89/C90 (ISO/IEC 9899:1990):
    • 4.5.3.3 Функция tanh

См. также

sinhsinhfsinhl
(C99)(C99)
вычисляет гиперболический синус (\({\small\sinh{x} }\)sinh(x))
(функция)
coshcoshfcoshl
(C99)(C99)
вычисляет гиперболический косинус (\({\small\cosh{x} }\)cosh(x))
(функция)
atanhatanhfatanhl
(C99)(C99)(C99)
вычисляет обратный гиперболический тангенс (\({\small\operatorname{artanh}{x} }\)artanh(x))
(функция)
ctanhctanhfctanhl
(C99)(C99)(C99)
вычисляет комплексный гиперболический тангенс
(функция)
Документация C++ для tanh

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/numeric/math/tanh

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API