imaxdiv

Menghitung kuota dan sisa dua nilai bilangan bulat dengan ukuran apa pun sebagai operasi tunggal.

Sintaks

imaxdiv_t imaxdiv(
   intmax_t numer,
   intmax_t denom
);

Parameter

numer
Pembidik.

denom
Denominator.

Nilai hasil

imaxdiv, yang dipanggil dengan argumen jenis intmax_t, mengembalikan struktur jenis imaxdiv_t yang terdiri dari quotient dan sisanya.

Keterangan

Fungsi dibagi imaxdivnumer dengan denom dan dengan demikian menghitung kuota dan sisanya. Struktur imaxdiv_t berisi kuota, intmax_tquot, dan sisanya, intmax_trem. Tanda kuota sama dengan tanda kuota matematika. Nilai absolutnya adalah bilangan bulat terbesar yang kurang dari nilai absolut kuota matematika. Jika denominator adalah 0, program akan dihentikan dengan pesan kesalahan.

Persyaratan

Rutin Header yang diperlukan
imaxdiv <inttypes.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.

Contoh

// 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);
}

Ketika dibangun dan kemudian dipanggil dengan parameter baris perintah , 9460730470000000 8766kode menghasilkan output ini:

The call to imaxdiv(9460730470000000, 8766)
results in a quotient of 1079252848505, and a remainder of 5170

Baca juga

Dukungan matematika dan titik mengambang
div
ldiv, lldiv