Пространства имён
Варианты
Действия

tgamma

Материал из cppreference.com
< c | numeric | math
 
 
 
Основные математические функции
Функции
Основные операции
(C99)
(C99)
(C99)
(C99)(C99)(C99)(C23)
Максимум/минимум
Показательные функции
(C23)
(C99)
(C99)
(C23)
(C23)
(C99)
(C99)(C23)
(C23)
(C23)
Степенные функции
(C99)
(C23)
(C23)
(C99)
(C23)
(C23)
Тригонометрические и гиперболические функции
(C23)
(C23)
(C23)
(C23)
(C99)
(C99)
(C99)
Функции ошибки и гамма-функции
(C99)
(C99)
(C99)
(C99)
Функции округления операций с плавающей точкой
(C99)(C99)(C99)
(C99)
(C99)(C99)(C99)
(C23)(C23)(C23)(C23)
Функции работы с плавающей точкой
(C99)(C99)
(C99)(C23)
(C99)
Операции сужения
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
Quantum and quantum exponent functions
Decimal re-encoding functions
Total order and payload functions
Classification
(C99)
(C99)
(C99)
(C23)
Типы
Макроконстанты
Специальные значения с плавающей точкой
(C99)(C23)
Аргументы и возвращаемые значения
Обработка ошибок
 
<tbody> </tbody>
Определено в заголовочном файле <math.h>
float tgammaf( float arg );
(начиная с C99)
double tgamma( double arg );
(начиная с C99)
long double tgammal( long double arg );
(начиная с C99)

Вычисляет гамма-функцию от arg.

Параметры

arg
значение с плавающей точкой
Оригинал:
floating point value
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Возвращаемое значение

Если не возникает ошибок, возвращается значение гамма-функции от arg, то есть
0
targ-1
e-t dt
.

Если возникает ошибка области определения, возвращается значение, определенное реализацией (NaN, где он поддерживается).

Если возникает ошибка выхода на полюс, возвращается ±HUGE_VAL, ±HUGE_VALF или ±HUGE_VALL.

Если возникает ошибка области значений из-за переполнения через верхнюю границу, возвращается ±HUGE_VAL, ±HUGE_VALF или ±HUGE_VALL.

Если возникает ошибка области значений из-за переполнения через нижнюю границу, возвращается корректное значение после округления.

Заметки

Если arg — натуральное число, то tgamma(arg) является факториалом от arg-1. Многие реализации вычисляют точный факториал на области целых чисел, если аргумент является достаточно малым целым.

Пример

#include <stdio.h>
#include <math.h>
#include <float.h>
#include <errno.h>
#include <fenv.h>
#pragma STDC FENV_ACCESS ON
int main(void)
{
    printf("tgamma(10) = %f, 9!=%f\n", tgamma(10), 2*3*4*5*6*7*8*9.0);
    printf("tgamma(0.5) = %f, sqrt(pi) = %f\n", sqrt(acos(-1)), tgamma(0.5));
    // special values
    printf("tgamma(+Inf) = %f\n", tgamma(INFINITY));
    // error handling
    errno = 0; feclearexcept(FE_ALL_EXCEPT);
    printf("tgamma(-1) = %f\n", tgamma(-1));
    if(errno == ERANGE) perror("    errno == ERANGE");
    else if(errno == EDOM)   perror("    errno == EDOM");
    if(fetestexcept(FE_DIVBYZERO)) puts("    FE_DIVBYZERO raised");
    else if(fetestexcept(FE_INVALID)) puts("    FE_INVALID raised");
}

Возможный вывод:

tgamma(10) = 362880.000000, 9!=362880.000000
tgamma(0.5) = 1.772454, sqrt(pi) = 1.772454
tgamma(+Inf) = inf
tgamma(-1) = nan
    errno == EDOM: Numerical argument out of domain
    FE_INVALID raised

См. также

(C99)
натуральный логарифм гамма-функции
(функция) [править]

Внешние ссылки

Weisstein, Eric W. "Gamma Function." С MathWorld - Ресурс Wolfram Web.
Оригинал:
Weisstein, Eric W. "Gamma Function." From MathWorld--A Wolfram Web Resource.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.