Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 x^y 및 y^x 중 더 큰 값 찾기

<시간/>

이 문제에서는 두 개의 숫자 x와 y가 주어집니다. 우리의 임무는 x^y와 y^x 중 더 큰 것을 찾는 것입니다.

문제 설명: 문제는 간단합니다. 우리는 날씨 x에서 y의 거듭제곱을 찾아야 합니다. y가 x의 거듭제곱보다 큽니다.

문제를 이해하기 위해 예를 들어 보겠습니다.

입력: x =4, y =5

출력: 1024

설명:

x^y =4^5 =1024
y^x =5^4 =625

솔루션 접근 방식

문제의 해결책은 간단합니다. 우리는 x^y와 y^x의 값을 찾고 둘 다의 최대값을 반환해야 합니다.

로그를 취함으로써 문제를 해결하는 수학적으로 더 쉬운 방법이 있을 수 있습니다. 그래서

x^y =y*log(x) .

이 값은 계산하기 쉽습니다.

우리 솔루션의 작동을 설명하는 프로그램,

예시

#include <bits/stdc++.h>
using namespace std;

int main() {
   
   double x = 3, y = 7;
   double ylogx = y * log(x);
   double xlogy = x * log(y);
   
   if(ylogx > xlogy)
      cout<<x<<"^"<<y;
   else if (ylogx < xlogy)
      cout<<y<<"^"<<x;
   else
      cout<<"None";
   cout<<" has greater value";
   return 0;
}

출력

3^7 has greater value