Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_1_APR.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
582.14 Кб
Скачать

2.24 Infinity, infinityf - представление бесконечности

#include <math.h>

double infinity(void);

float infinityf(void);

infinity и infinityf возвращают специальное значение, объявленное в IEEE двойной и единичнойной точности соответственно.

2.25 Isnan, isnanf, isinf, isinff, finite, finitef - тест для чисел структуры exception

#include <ieeefp.h>

int isnan(double arg);

int isinf(double arg);

int finite(double arg);

int isnanf(float arg);

int isinff(float arg);

int finitef(float arg);

Эти функции выдают информацию о заданном аргументе - числе с плавающей точкой.

Существует пять основных форматов чисел:

zeroчисло, все биты которого - нули.

subnormalиспользуется для представления чисел с нулевым показателем, но ненулевой дробью.

normalЧисло с показателем степени и с дробной частью.

infinityЧисло с показателем, состоящим из одних единиц (в битовом представлении) и нулевой дробью.

NANЧисло с показателем, состоящим из одних единиц, и ненулевой дробью.

  • isnan возвращает 1, если аргумент равен nan. isinf возвращает 1, если аргумент равен infinity. finite возвращает 1, если аргумент равен zero, subnormal или normal. isnanf, isinff и finitef производят те же действия, что и их аналоги isnan, isinf и finite, но с одноразрядными числами с плавающей точкой.

2.26 Ldexp, ldexpf - задание показателя

#include <math.h>

double ldexp(double val, int exp);

float ldexpf(float val, int exp);

  • ldexp вычисляет величину val*(p**exp). ldexpf аналогична с точностью до типов.

  • ldexp и ldexpf возвращают вычисленные значения.

  • При переполнении в обе стороны переменной errno присваивается значение ERANGE. При переполнении в отрицательную сторону ldexp и ldexpf приобретают значение 0.0. При переполнении в положительную сторону ldexp становится равной HUGE_VAL со знаком плюс или минус.

  • ldexp удовлетворяет стандарту ANSI C. ldexpf является расширением.

2.27 Log, logf - натуральные логарифмы

#include <math.h>

double log(double x);

float logf(float x);

Возвращают значение натурального логарифма от х, то есть логарифм по основанию e ( где e - основание натуральной системы логарифмов, 2.71828...). log и logf идентичны с точностью до типов входных и выходных данных.

  • Вы можете изменить обработку ошибок для этих функций, используя matherr.

  • В случае успеха возвращается вычисленное значение. Если х равен нулю, получаемое значение функции будет -HUGE_VAL а переменная errno станет равной EDOM. Переиначить поведение обработчика ошибок можно использованием matherr.

  • log удовлетворяет стандарту ANSI C. logf является расширением.

2.28 Log10, log10f - логарифмы по основанию 10

#include <math.h>

double log10(double x);

float log10f(float x);

log10 возвращает значение логарифма по основанию 10 от х. Он определяется как ln(х)/ln(10).

  • logf идентичен с точностью до входных и выходных типов.

  • Обе функции возвращают вычисленные значения.

  • Для получения справки об ошибках, обратитесь к разделу, описывающему log.

  • log удовлетворяет стандарту ANSI C. logf является расширением.

2.29 log1p, log1pf - натуральные логарифмы oт (1+x)

#include <math.h>

double log1p(double x);

float log1pf(float x);

log1p возвращает значение ln(1+x), натурального логарифма от 1+х. Предпочтительнее использовать именно log1p а не log(1+x) для большей точности вычислений при достаточно малых x.

  • log1pf идентичен с точностью до входных и выходных типов.

  • Обе функции возвращают вычисленные значения, - каждый соответствующего типа.

  • Ни log1p, ни log1pf не входят в ANSI C и System V Interface Definition.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]