Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Herhangi bir boyuttaki iki tamsayı değerinin bölümünü ve geri kalanını tek bir işlem olarak hesaplar.
Sözdizimi
imaxdiv_t imaxdiv(
intmax_t numer,
intmax_t denom
);
Parametreler
numer
Pay.
denom
Payda.
Dönüş değeri
imaxdiv, türündeki intmax_tbağımsız değişkenlerle çağrılır, bölümü ve kalan bölümü oluşturan bir tür imaxdiv_t yapısı döndürür.
Açıklamalar
imaxdiv işlevi ölçütüne göre bölünür numer denom ve böylece bölüm ile geri kalanı hesaplar. Yapı imaxdiv_t , bölüm, intmax_t quotve kalan intmax_t remöğesini içerir. Bölüm işareti, matematiksel bölüm işaretiyle aynıdır. Mutlak değeri, matematik bölümünün mutlak değerinden küçük olan en büyük tamsayıdır. Payda 0 ise, program bir hata iletisiyle sonlanır.
Gereksinimler
| Yordam | Gerekli başlık |
|---|---|
imaxdiv |
<inttypes.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
// crt_imaxdiv.c
// Build using: cl /W3 /Tc crt_imaxdiv.c
// This example takes two integers as command-line
// arguments and calls imaxdiv to divide the first
// argument by the second, then displays the results.
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
int main(int argc, char *argv[])
{
intmax_t x,y;
imaxdiv_t div_result;
x = atoll(argv[1]);
y = atoll(argv[2]);
printf("The call to imaxdiv(%lld, %lld)\n", x, y);
div_result = imaxdiv(x, y);
printf("results in a quotient of %lld, and a remainder of %lld\n\n",
div_result.quot, div_result.rem);
}
derlendiğinde ve komut satırı parametreleriyle 9460730470000000 8766çağrıldığında kod şu çıkışı oluşturur:
The call to imaxdiv(9460730470000000, 8766)
results in a quotient of 1079252848505, and a remainder of 5170