當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ div()用法及代碼示例


C++ 中的div() 函數計算兩個數相除的積分商和餘數。

div() 函數在<cstdlib> 頭文件中定義。

數學上,

quot * y + rem = x

div() 原型 [從 C++ 11 標準開始]

div_t div(int x, int y);
ldiv_t div(long x, long y);
lldiv_t div(long long x, long long y);

它接受兩個參數 xy ,並返回 x 除以 y 的整數商和餘數。

quot 是表達式 x/y 的結果。餘數 rem 是表達式 x%y 的結果。

參數:

  • x :表示分子。
  • y :表示分母。

返回:

div() 函數返回 div_t , ldiv_tlldiv_t 類型的結構。這些結構中的每一個都包含兩個成員:quotrem。它們定義如下:

div_t:
struct div_t {
	int quot;
	int rem;
};

ldiv_t:
struct ldiv_t {
	long quot;
	long rem;
};

lldiv_t:
struct lldiv_t {
	long long quot;
	long long rem;
};

示例:div() 函數如何在 C++ 中工作?

#include <iostream>
#include <cstdlib>
using namespace std;

int main()
{
	div_t result1 = div(51, 6);

	cout << "Quotient of 51/6 = " << result1.quot << endl;
	cout << "Remainder of 51/6 = " << result1.rem << endl;

	ldiv_t result2 = div(19237012L,251L);

	cout << "Quotient of 19237012L/251L = " << result2.quot << endl;
	cout << "Remainder of 19237012L/251L = " << result2.rem << endl;

	return 0;
}

運行程序時,輸出將是:

Quotient of 51/6 = 8
Remainder of 51/6 = 3
Quotient of 19237012L/251L = 76641
Remainder of 19237012L/251L = 121

相關用法


注:本文由純淨天空篩選整理自 C++ div()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。