在 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

更新於: 2021-01-25

137 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告

© . All rights reserved.