fmod(3)

NOME
fmod, fmodf, fmodl - função de resto de divisão para ponto flutuante

BIBLIOTECA
Biblioteca matemática (libm, -lm)

SINOPSE
#include <math.h>

double fmod(double x, double y);
float fmodf(float x, float y);
long double fmodl(long double x, long double y);

    Requisitos de macro de teste de recursos para o glibc (consulte feature_test_macros(7)):

fmodf(), fmodl():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || /* Desde o glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIÇÃO
These functions compute the floating-point remainder of dividing x by y. The return value is x - n * y, where n is the quotient of x / y, rounded toward zero to an integer.

VALOR DE RETORNO
On success, these functions return the value x - n*y, for some integer n, such that the returned value has the same sign as x and a magnitude less than the magnitude of y.

If x or y is a NaN, a NaN is returned.

If x is an infinity, a domain error occurs, and a NaN is returned.

If y is zero, a domain error occurs, and a NaN is returned.

If x is +0 (-0), and y is not zero, +0 (-0) is returned.

ERROS
Consulte math_error(7) para obter informações sobre como determinar se ocorreu um erro ao chamar essas funções.

Os seguintes erros podem ocorrer:

Domain error: x is an infinity
    errno é definido com EDOM (mas veja BUGS). Uma exceção de ponto flutuante inválido (FE_INVALID) é levantada.

Domain error: y is zero
    errno é definido com EDOM. Uma exceção de ponto flutuante inválida (FE_INVALID) é levantada.

ATRIBUTOS
Para uma explicação dos termos usados nesta seção, consulte attributes(7).
Interface | Atributo | Valor
fmod(), fmodf(), fmodl() | Thread safety | MT-Safe

PADRÕES
C11, POSIX.1-2008.

HISTÓRICO
C99, POSIX.1-2001.

A variante retornando double também está de acordo com SVr4, 4.3BSD, C89.

BUGS
Before glibc 2.10, the glibc implementation did not set errno to EDOM when a domain error occurred for an infinite x.

VEJA TAMBÉM
remainder(3)

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por Rubens de Jesus Nogueira <darkseid99@usa.net> e André Luiz Fassone <lonely_wolf@ig.com.br>

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 (https://www.gnu.org/licenses/gpl-3.0.html) ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores (debian-l10n-portuguese@lists.debian.org).