logo

C/C++의 거듭제곱 함수

두 숫자의 밑수와 지수가 주어지면 C++ 또는 C pow() 함수 x가 y의 거듭제곱인 것을 찾습니다. 즉, 엑스그리고 . 기본적으로 C/C++에서는 pow() 함수를 사용하여 지수 값을 계산합니다. 그만큼 pow() 함수 C/C++에서 숫자의 거듭제곱을 계산하는 데 사용됩니다. 입력으로 두 배를 취하고 출력으로 두 배를 반환합니다.

우리는 사용해야합니다 #포함하다 C/C++에서 C/C++ 프로그램에서 해당 pow() 함수를 사용합니다.



pow() 함수의 구문

double pow  (double x, double y);>

pow() 함수 매개변수

이 메서드는 두 개의 인수만 사용합니다.

    x: 부동 소수점 기본 값 y: 부동 소수점 거듭제곱 값

pow() 함수 반환 값

  • 거듭제곱 함수는 x의 y 거듭제곱에 대한 부동 소수점 값을 반환합니다( 엑스그리고 ).

pow() 함수의 예

 Input: 2.0, 5.0 Output: 32.00 Explanation:  pow(2.0, 5.0) executes 2.0 raised to the power 5.0, which equals 32 Input: 5.0, 2.0 Output: 25.00 Explanation:  pow(5.0, 2.0) executes 5.0 raised to the power 2.0, which equals 25>






자바 색상 코드



// C program to illustrate> // power function> #include> #include> int> main()> {> >double> x = 6.1, y = 4.8;> >// Storing the answer in result.> >double> result =>pow>(x, y);> >printf>(>'%.2lf'>, result);> >return> 0;> }>

>

>

C++




// C++ program to illustrate> // power function> #include> using> namespace> std;> int> main()> {> >double> x = 6.1, y = 4.8;> >// Storing the answer in result.> >double> result =>pow>(x, y);> >// printing the result upto 2> >// decimal place> >cout << fixed << setprecision(2) << result << endl;> >return> 0;> }>

마우스 휠이 제대로 스크롤되지 않음
>

>

산출

5882.79>

시간 복잡도: O(로그(n))

보조 공간: 오(1)

정수를 사용한 pow() 함수 작업

pow() 함수는 'double'을 인수로 사용하고 'double' 값을 반환합니다. 이 함수는 정수에 대해 항상 작동하는 것은 아닙니다. 그러한 예 중 하나가 pow(5, 2)입니다. 정수에 할당하면 일부 컴파일러에서는 24를 출력하고 일부 다른 컴파일러에서는 잘 작동합니다. 그러나 정수에 대한 할당이 없는 pow(5, 2)는 25를 출력합니다.

또 다른 방법은 둥근 이를 정수 유형에 할당하는 함수입니다.

  • 그 이유는 52(예: 25)는 반환 유형이 double이므로 24.9999999 또는 25.0000000001로 저장될 수 있습니다. int에 할당하면 25.0000000001은 25가 되지만 24.9999999는 24를 출력합니다.
  • 이를 극복하고 정확한 답을 정수 형식으로 출력하려면 결과에 1e-9 또는 0.000000001을 추가하고 이를 타입캐스트할 수 있습니다. 정수 예를 들어 (int)(pow(5, 2)+1e-9) 는 컴파일러에 관계없이 정답(위 예에서는 25)을 제공합니다.

예제 1: 정수를 사용하여 pow() 함수의 동작을 보여주는 C/C++ 프로그램.

C++


역방향 문자열 자바



// C++ program to illustrate> // working with integers in> // power function> #include> using> namespace> std;> int> main()> {> >int> a, b;> >// Using typecasting for> >// integer result> >a = (>int>)(>pow>(5, 2) + 0.5);> >b = round(>pow>(5,2));> >cout << a << endl << b ;> >return> 0;> }>

>

>

모니터 화면 크기 확인하는 방법




// C program to illustrate> // working with integers in> // power function> #include> #include> int> main()> {> >int> a, b;> >// Using typecasting for> >// integer result> >a = (>int>)(>pow>(5, 2) + 1e-9);> >b = round(>pow>(5,2));> >printf>(>'%d %d'>, a, b);> >return> 0;> }>

>

>

산출

25 25>

시간 복잡도: O(로그(n))
보조 공간: 오(1)