C ++ 'daki rint () işlevi, geçerli yuvarlama modunu kullanarak bağımsız değişkeni bir integral değere yuvarlar.
C ++ 'daki rint () işlevi, geçerli yuvarlama modunu kullanarak bağımsız değişkeni bir integral değere yuvarlar. Geçerli yuvarlama modu fesetround () işlevi tarafından belirlenir.
rint () prototipi (C ++ 11 standardından itibaren)
çift rint (çift x); float rint (float x); uzun çift ip (uzun çift x); çift ip (T x); // İntegral türü için
Rint () işlevi tek bir bağımsız değişken alır ve double, float veya long double türünde bir değer döndürür. Bu işlev başlık dosyasında tanımlanmıştır.
rint () Parametreler
Rint () işlevi yuvarlamak için tek bir bağımsız değişken değeri alır.
rint () Dönüş değeri
Rint () işlevi, fegetround () ile belirtilen yuvarlama yönünü kullanarak x bağımsız değişkenini bir integral değere yuvarlar ve değeri döndürür. Varsayılan olarak, yuvarlama yönü 'en yakına' olarak ayarlanmıştır. Yuvarlama yönü, fesetround () işlevi kullanılarak diğer değerlere ayarlanabilir.
Örnek 1: rint () C ++ 'da nasıl çalışır?
#include #include #include using namespace std; int main() ( // by default, rounding direction is to-nearest i.e. fesetround(FE_TONEAREST) double x = 11.87, result; result = rint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // upper value is taken for mid-way values x = 11.5; result = rint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = rint(x); cout << "Rounding downward (" << x << ") = " << result << endl; // setting rounding direction to UPWARD fesetround(FE_UPWARD); x = 33.32; result = rint(x); cout << "Rounding upward (" << x << ") = " << result << endl; return 0; )
Programı çalıştırdığınızda, çıktı:
En yakına yuvarlama (11.87) = 12 En yakına yuvarlama (11.5) = 12 Aşağı yuvarlama (11.8699) = 11 Yukarı yuvarlama (33.3201) = 34
Örnek 2: integral türleri için rint () işlevi
#include #include #include using namespace std; int main() ( int x = 15; double result; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); result = rint(x); cout << "Rounding downward (" << x << ") = " << result << endl; return 0; )
Programı çalıştırdığınızda, çıktı:
Aşağı yuvarlama (15) = 15
İntegral değerler için, rint işlevini uygulamak, girdi ile aynı değeri döndürür. Bu nedenle pratikte integral değerler için yaygın olarak kullanılmaz.