>백엔드 개발 >C++ >C++의 나머지 함수에 대한 자세한 설명

C++의 나머지 함수에 대한 자세한 설명

WBOY
WBOY원래의
2023-11-18 14:41:084287검색

C++의 나머지 함수에 대한 자세한 설명

C++의 나머지 함수에 대한 자세한 설명

C++에서는 나머지 연산자(%)를 사용하여 두 숫자를 나눈 나머지를 계산합니다. 피연산자가 정수 유형(char, short, int, long 등 포함)이거나 부동 소수점 숫자 유형(예: float, double)일 수 있는 이항 연산자입니다. 나머지 연산자는 피제수와 동일한 부호를 가진 결과를 반환합니다.

예를 들어 정수의 나머지 연산의 경우 다음 코드를 사용하여 구현할 수 있습니다.

int a = 10;
int b = 3;
int c = a % b; // c的值为1

위 코드에서 변수 a는 변수 b로 나누어지고 나머지는 1이 되어 변수 c에 할당됩니다. . 부동 소수점 수를 사용하여 나머지 연산을 수행할 수도 있습니다. 코드는 다음과 같습니다.

float m = 10.5;
float n = 3.2;
float p = fmod(m, n); // p的值为1.3

이 예에서는 cmath 헤더 파일의 fmod 함수를 사용하여 부동 소수점 수 m을 n으로 나눈 나머지를 계산합니다. fmod 함수의 반환 값도 부동 소수점 숫자 유형입니다.

나머지 연산자 및 fmod 함수를 사용하는 것 외에도 C++에서는 나머지 함수 및 modf 함수와 같은 나머지 계산을 위한 다른 함수도 제공합니다. 나머지 함수의 프로토타입은 다음과 같습니다.

double remainder(double x, double y);
float remainder(float x, float y);
long double remainder(long double x, long double y);

이 함수는 나눗셈 x/y의 나머지를 반환합니다. fmod 함수와 달리 나머지 함수에서 반환된 나머지는 피제수와 동일한 부호를 갖습니다. 예를 들어 다음 코드는 남은 함수의 사용을 보여줍니다.

double x = 10.5;
double y = -3.2;
double r = remainder(x, y); // r的值为1.3

이 예에서는 부동 소수점 숫자 x를 부동 소수점 숫자 y로 나누고 나머지 함수를 사용하여 나머지를 계산하면 결과는 1.3입니다.

나머지 계산에 일반적으로 사용되는 또 다른 함수는 modf 함수로, 부동 소수점 숫자를 정수 부분과 소수 부분으로 분해하는 데 사용됩니다. modf 함수의 프로토타입은 다음과 같습니다.

double modf(double x, double* intpart);
float modf(float x, float* intpart);
long double modf(long double x, long double* intpart);

이 함수의 첫 번째 매개변수는 분해할 부동 소수점 숫자이고, 두 번째 매개변수는 정수 부분을 저장하는 데 사용되는 double/float/long double 유형에 대한 포인터입니다. . modf 함수는 부동 소수점 숫자 x의 소수 부분을 반환합니다. 예는 다음과 같습니다.

double num = 3.14;
double intpart;
double fracpart = modf(num, &intpart); // intpart的值为3.0, fracpart的值为0.14

이 예에서는 부동 소수점 숫자 num을 정수 부분과 소수 부분으로 분해하고 분해된 값을 각각 intpart 및 fracpart 변수에 저장합니다.

요약하자면, C++에서는 부동 소수점 숫자의 나머지와 분해 함수를 계산하는 다양한 방법을 제공합니다. 정수이든 부동 소수점이든 이러한 함수를 통해 C++에서 관련 계산 작업을 쉽게 완료할 수 있습니다.

위 내용은 C++의 나머지 함수에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.