Saturday, March 10, 2007
C언어] 세제곱근, 네제곱근, 거듭제곱근 구하기 함수; Cube Root Function; cbrt()
자바에서는 Math.cbrt() 메소드로 세제곱근을 구할 수 있지만, C언어에는 cbrt() 라는 함수가 없기에 대신, pow() 라는 함수를 사용하여, 세제곱근/네제곱근/다섯제곱근 등의 거듭제곱근을 구할 수 있습니다.
가령 2의 4제곱근을 구하려면
pow(2.0, 1.0/4.0)
이렇게 합니다. pow() 함수 속에는 정수형 숫자가 허용되지 않기에, 2는 2.0 으로 표현해야 합니다.
5의 세제곱근을 구하려면
pow(5.0, 1.0/3.0)
이렇게 합니다.
소스 파일명: example.cpp
컴파일 및 실행 결과 화면:
▶▶ C언어] C에서 제곱근, 루트 근사값 계산 방법, sqrt() 함수 사용법
가령 2의 4제곱근을 구하려면
pow(2.0, 1.0/4.0)
이렇게 합니다. pow() 함수 속에는 정수형 숫자가 허용되지 않기에, 2는 2.0 으로 표현해야 합니다.
5의 세제곱근을 구하려면
pow(5.0, 1.0/3.0)
이렇게 합니다.
C에서, 3제곱근, 4제곱근 출력 예제
소스 파일명: example.cpp
#include <stdio.h>
#include <math.h>
int main(void) {
printf("5의 세제곱근: %.16f\n", pow(5.0, 1.0/3.0));
// 출력 결과: 1.7099759466766968
// 검산
printf("5의 세제곱근의 세제곱: %.16f\n", pow(1.7099759466766968, 3.0));
// 출력 결과: 4.9999999999999982
printf("\n\n\n\t< 2의 n제곱근 표>\n\n");
for (double n = 2.0; n <= 20.0; n++)
printf("2의 %2.0f제곱근 = %.16f\n", n, pow(2.0, 1.0 / n));
return 0;
}
#include <math.h>
int main(void) {
printf("5의 세제곱근: %.16f\n", pow(5.0, 1.0/3.0));
// 출력 결과: 1.7099759466766968
// 검산
printf("5의 세제곱근의 세제곱: %.16f\n", pow(1.7099759466766968, 3.0));
// 출력 결과: 4.9999999999999982
printf("\n\n\n\t< 2의 n제곱근 표>\n\n");
for (double n = 2.0; n <= 20.0; n++)
printf("2의 %2.0f제곱근 = %.16f\n", n, pow(2.0, 1.0 / n));
return 0;
}
컴파일 및 실행 결과 화면:
D:\Z>cl /nologo example.cpp && example.exe
example.cpp
5의 세제곱근: 1.7099759466766968
5의 세제곱근의 세제곱: 4.9999999999999982
< 2의 n제곱근 표>
2의 2제곱근 = 1.4142135623730951
2의 3제곱근 = 1.2599210498948732
2의 4제곱근 = 1.1892071150027210
2의 5제곱근 = 1.1486983549970351
2의 6제곱근 = 1.1224620483093730
2의 7제곱근 = 1.1040895136738123
2의 8제곱근 = 1.0905077326652577
2의 9제곱근 = 1.0800597388923061
2의 10제곱근 = 1.0717734625362931
2의 11제곱근 = 1.0650410894399627
2의 12제곱근 = 1.0594630943592953
2의 13제곱근 = 1.0547660764816467
2의 14제곱근 = 1.0507566386532194
2의 15제곱근 = 1.0472941228206267
2의 16제곱근 = 1.0442737824274138
2의 17제곱근 = 1.0416160106505838
2의 18제곱근 = 1.0392592260318434
2의 19제곱근 = 1.0371550444461919
2의 20제곱근 = 1.0352649238413776
D:\Z>
example.cpp
5의 세제곱근: 1.7099759466766968
5의 세제곱근의 세제곱: 4.9999999999999982
< 2의 n제곱근 표>
2의 2제곱근 = 1.4142135623730951
2의 3제곱근 = 1.2599210498948732
2의 4제곱근 = 1.1892071150027210
2의 5제곱근 = 1.1486983549970351
2의 6제곱근 = 1.1224620483093730
2의 7제곱근 = 1.1040895136738123
2의 8제곱근 = 1.0905077326652577
2의 9제곱근 = 1.0800597388923061
2의 10제곱근 = 1.0717734625362931
2의 11제곱근 = 1.0650410894399627
2의 12제곱근 = 1.0594630943592953
2의 13제곱근 = 1.0547660764816467
2의 14제곱근 = 1.0507566386532194
2의 15제곱근 = 1.0472941228206267
2의 16제곱근 = 1.0442737824274138
2의 17제곱근 = 1.0416160106505838
2의 18제곱근 = 1.0392592260318434
2의 19제곱근 = 1.0371550444461919
2의 20제곱근 = 1.0352649238413776
D:\Z>
▶▶ C언어] C에서 제곱근, 루트 근사값 계산 방법, sqrt() 함수 사용법
tag: cpp
C언어 | C/C++ (Visual C++)
<< Home