检查一个数字是否为 C++ 中其他数字的幂


这里将演示如何检查一个数字是否是另一个数字的幂。假设一个数字为 125,另一个数字为 5。当发现 125 是 5 的幂时,就会返回 true。本例中为真。125 = 53

算法

isRepresentPower(x, y):
Begin
   if x = 1, then
      if y = 1, return true, otherwise false
   pow := 1
   while pow < y, do
      pow := pow * x
   done
   if pow = y, then
      return true
   return false
End

示例

 现场演示

#include<iostream>
#include<cmath>
using namespace std;
bool isRepresentPower(int x, int y) {
   if (x == 1)
      return (y == 1);
      long int pow = 1;
   while (pow < y)
      pow *= x;
   if(pow == y)
   return true;
   return false;
}
int main() {
   int x = 5, y = 125;
   cout << (isRepresentPower(x, y) ? "Can be represented" : "Cannot be represented");
}

输出

Can be represented

更新时间:2019-09-27

520 次浏览

启动你的 职业生涯

完成课程获取认证

立即开始
广告