Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ div() 함수 완벽 가이드 – 몫과 나머지를 한 번에 구하기

C++ div() 함수란?

C/C++ 표준 라이브러리 함수인 div_t div(int numer, int denom)는 분자(numer)를 분모(denom)로 나누는 함수입니다. 이 함수의 가장 큰 장점은 몫(quotient)과 나머지(remainder)를 단 한 번의 연산으로 동시에 얻을 수 있다는 점입니다.

함수 선언

div_t div(int numer, int denom)

매개변수 및 반환값

매개변수:

  • numer: 나누어질 수(분자)
  • denom: 나누는 수(분모)

반환값: 이 함수는 <cstdlib> 헤더 파일에 정의된 구조체 형태로 결과를 반환하며, 해당 구조체는 두 개의 멤버 변수를 포함합니다.

div_t {
    int quot;  // 몫
    int rem;   // 나머지
}

사용 예제

다음 예제는 div() 함수를 활용해 두 숫자의 나눗셈 결과에서 몫과 나머지를 각각 출력하는 방법을 보여줍니다.

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

int main () {
    div_t output;

    output = div(27, 4);
    cout << "(27 / 4)의 몫 = " << output.quot << endl;
    cout << "(27 / 4)의 나머지 = " << output.rem << endl;

    output = div(27, 3);
    cout << "(27 / 3)의 몫 = " << output.quot << endl;
    cout << "(27 / 3)의 나머지 = " << output.rem << endl;

    return(0);
}

실행 결과

(27 / 4)의 몫 = 6
(27 / 4)의 나머지 = 3
(27 / 3)의 몫 = 9
(27 / 3)의 나머지 = 0

정리

위 예제에서 확인할 수 있듯이, div() 함수는 한 번의 호출만으로 몫과 나머지를 모두 구할 수 있습니다. 일반적으로 나눗셈 연산자(/)와 나머지 연산자(%)를 따로 사용하는 것보다 효율적이며, 코드의 가독성도 높여주기 때문에 나눗셈 결과를 함께 다뤄야 하는 상황에서 유용하게 활용할 수 있습니다.