- bullseye-backports 4.18.0-1~bpo11+1
- testing 4.18.0-1
- unstable 4.18.0-1
GAMMA(3) | Руководство программиста Linux | GAMMA(3) |
ИМЯ¶
gamma, gammaf, gammal - логарифм гамма-функции
СИНТАКСИС¶
#include <math.h>
double gamma(double x);
float gammaf(float x);
long double gammal(long double x);
Компонуется при указании параметра -lm.
gamma():
|| /* начиная с glibc 2.19: */ _DEFAULT_SOURCE
|| /* версии glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
|| /* начиная с glibc 2.19: */ _DEFAULT_SOURCE
|| /* версии glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
ОПИСАНИЕ¶
Данные функции устарели. Используйте вместо них, по возможности, tgamma(3) либо lgamma(3).
Определение гамма-функции смотрите в tgamma(3).
Версия *BSD¶
В libm из 4.4BSD и некоторых версиях FreeBSD имеется функция gamma(), которая вычисляет гамма-функцию, как и ожидается.
Версия glibc¶
В glibc есть функция gamma(), которая эквивалентна lgamma(3) и вычисляет натуральный логарифм гамма-функции.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ¶
Смотрите lgamma(3).
ОШИБКИ¶
Смотрите lgamma(3).
АТРИБУТЫ¶
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение |
gamma(), gammaf(), gammal() | Безвредность в нитях | MT-Unsafe race:signgam |
СООТВЕТСТВИЕ СТАНДАРТАМ¶
Из-за различий в поведении в различных системах эта функция не попала ни в один современный стандарт. Она описана в SVID 2.
ЗАМЕЧАНИЯ¶
История¶
В 4.2BSD функция gamma() вычисляет ln(|Gamma(|x|)|), записывая знак Gamma(|x|) во внешнее целое signgam. В 4.3BSD было изменено имя на lgamma(3), и в справочной странице указано
"Через
некоторое
время имя gamma
было
восстановлено
и
использовано
для
гаммы-функции"
В действительности это произошло в 4.4BSD, где gamma() вычисляла гамма-функцию (без влияния на signgam). Однако, это случилось слишком поздно и теперь мы имеем tgamma(3), «настоящую» гамма-функцию.
СМ. ТАКЖЕ¶
ЗАМЕЧАНИЯ¶
Эта страница является частью проекта Linux man-pages версии 5.10. Описание проекта, информацию об ошибках и последнюю версию этой страницы можно найти по адресу https://www.kernel.org/doc/man-pages/.
ПЕРЕВОД¶
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.
15 сентября 2017 г. | GNU |