
gmp_sqrtrem 함수는 GMP 라이브러리를 사용하여 제곱근을 계산할 때 사용하는 함수입니다. 이 함수는 제곱근을 계산하고, 제곱근이 아닌 나머지 값을 반환합니다.
gmp_sqrtrem 함수의 사용법은 다음과 같습니다.
- gmp_sqrtrem(a, rem, m) : a가 m의 제곱근인 경우, a의 제곱근을 반환하고, 나머지 rem을 0으로 설정합니다. a가 m의 제곱근이 아닌 경우, a의 제곱근을 반환하고, 나머지 rem을 a의 나머지로 설정합니다.
예제를 통해 이해해 보겠습니다.
#hostingforum.kr
c
#include
int main() {
mpz_t a, m, rem;
mpz_init(a);
mpz_init(m);
mpz_init(rem);
// 25가 16의 제곱근인 경우
mpz_set_str(a, "25", 10);
mpz_set_str(m, "16", 10);
mpz_sqrtrem(a, rem, m);
printf("제곱근: %s, 나머지: %sn", mpz_get_str(NULL, 10, a), mpz_get_str(NULL, 10, rem));
// 27가 16의 제곱근이 아닌 경우
mpz_set_str(a, "27", 10);
mpz_set_str(m, "16", 10);
mpz_sqrtrem(a, rem, m);
printf("제곱근: %s, 나머지: %sn", mpz_get_str(NULL, 10, a), mpz_get_str(NULL, 10, rem));
mpz_clear(a);
mpz_clear(m);
mpz_clear(rem);
return 0;
}
이 예제에서, gmp_sqrtrem 함수는 제곱근을 계산하고, 나머지 값을 반환합니다. 제곱근이 아닌 나머지 값을 계산할 때, gmp_sqrtrem 함수는 a의 나머지 값을 반환합니다.
2025-04-03 02:40