English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C++ Biblioteca de Funções <cmath>
C ++A função rint() usa o padrão de arredondamento atual para arredondar o parâmetro para um valor inteiro. O padrão de arredondamento atual é determinado pela função fesetround().
double rint(double x); float rint(float x); long double rint(long double x); double rint(T x); //para inteiro
A função rint() arredonda um único parâmetro e retorna um valor do tipo double, float ou long double. Esta função está<cmath>Definido no cabeçalho.
A função rint() arredonda um único valor de parâmetro.
A função rint() arredonda o parâmetro x para um valor inteiro usando a direção de arredondamento especificada por fegetround() e retorna esse valor. Pelo padrão, a direção do arredondamento é "o mais próximo". Pode-se usar a função fesetround() para definir a direção do arredondamento para outros valores.
#include <iostream> #include <cmath> #include <cfenv> using namespace std; int main() { //Pelo padrão, a direção do arredondamento é a mais próxima, ou seja, fesetround(FE_TONEAREST) double x = 11.87, result; result = rint(x); cout << "Arredondamento para o mais próximo (" << x << ") = " << result << endl; //Valor intermediário para o maior x = 11.5; result = rint(x); cout << "Arredondamento para o mais próximo (" << x << ") = " << result << endl; // Definir a direção de arredondamento para DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = rint(x); cout << "Arredondamento para baixo (" << x << ") = " << result << endl; // Definir a direção do arredondamento para UPWARD fesetround(FE_UPWARD); x = 33.32; result = rint(x); cout << "Arredondamento para cima (" << x << ") = " << result << endl; return 0; }
Quando o programa é executado, a saída é:
Arredondamento para o mais próximo (11.87) = 12 Arredondamento para o mais próximo (11.5) = 12 Arredondamento para baixo (11.8699) = 11 Arredondamento para cima (33.3201) = 34
#include <iostream> #include <cmath> #include <cfenv> using namespace std; int main() { int x = 15; double result; // Definir a direção de arredondamento para DOWNWARD fesetround(FE_DOWNWARD); result = rint(x); cout << "Arredondamento para baixo (" << x << ") = " << result << endl; return 0; }
Quando o programa é executado, a saída é:
Arredondamento para baixo (15) = 15
Para valores inteiros, a função rint retorna o mesmo valor de entrada. Portanto, geralmente não é usada para valores inteiros.