Warning: Undefined array key "HTTP_ACCEPT_LANGUAGE" in /var/www/vhosts/bilgigunlugum.net/httpdocs/index.php on line 43
C Programlama

BG MVC Model View Controller eğitim serisi yayında...

Ana sayfa > Programlama > C Programlama > C standart kütüphanesi > <math.h> > nearbyint

nearbyint() fonksiyonu

Bildirim

double nearbyint(double arg); (C99)

float nearbyintf(float arg); (C99)

long double nearbyintl(long double arg); (C99)

Açıklama

Kendisine geçirilen arg parametre değerini geçerli yuvarlama moduna göre bir tamsayı değerine yuvarlar.

Parametreler

arg: Float bir değerdir.

Dönüş değeri

Geçerli yuvarlama moduna göre, arg parametre değerine en yakın tam sayı değeri geri döndürülür.

Örnek


#include <stdio.h>
#include <math.h>
#include <fenv.h>

void Get_Rounding(void);

int main(void)
{
    int curr_method;
    double dd=5.3;

    /* Aktif yuvarlama yöntemi */
    Get_Rounding();
    printf("Değişken değeri: %.2f, Yuvarlanmış değişken değeri: %.2f\n", dd, nearbyint(dd));

    /* Aktif yuvarlama yöntemini kaydetme */
    curr_method = fegetround();

    /* Geçici olarak aktif yuvarlama yöntemini değiştirme. */
    fesetround(FE_UPWARD);
    Get_Rounding();
    printf("Değişken değeri: %.2f, Yuvarlanmış değişken değeri: %.2f\n", dd, nearbyint(dd));

    /* Ön tanımlı yuvarlama yöntemini yeniden yükleme. */
    fesetround(curr_method);
    Get_Rounding();

    return 0;
}

void Get_Rounding(void)
{
  char *csonuc;

  switch (fegetround()) {
     case FE_TONEAREST:
          csonuc="FE_TONEAREST";
          break;
     case FE_DOWNWARD:
          csonuc="FE_DOWNWARD";
          break;
     case FE_UPWARD:
          csonuc="FE_UPWARD";
          break;
     case FE_TOWARDZERO:
          csonuc="FE_TOWARDZERO";
          break;
     default:
         csonuc="Bilinmiyor.";
  };

  printf("Aktif yuvarlama yöntemi: %s\n", csonuc);
}

Yukarıdaki örnekte, program aşağıdaki satırları ekrana yazar:

Aktif yuvarlama yöntemi: FE_TONEAREST
Değişken değeri: 5.30, Yuvarlanmış değişken değeri: 5.00
Aktif yuvarlama yöntemi: FE_UPWARD
Değişken değeri: 5.30, Yuvarlanmış değişken değeri: 6.00
Aktif yuvarlama yöntemi: FE_TONEAREST

Yukarıdaki program, nearbyint() fonksiyonu ile elde edilen işlem sonuçlarını ekrana yazar.