Deserium 數,帶有 C++ 程式示例


在本教程中,我們將學習有關帶示例的 Deserium 數。

pow(digit, digitsCount) 之和等於給定數字的數字稱為Deserium 數

讓我們瞭解以下步驟,以查詢給定的數字是否是deserium number

  • 初始化數字。

  • 查詢數字的位數。

  • 初始化變數以儲存和。

  • 重複執行,直至數字小於 0。

    • 透過將數字除以 10 獲取最後一位數字。

    • pow(digit, digitsCount) 新增到和中。

  • 如果和等於數字,則它就是deserium number,否則不是。

示例

我們來看看程式碼。

 線上演示

#include <bits/stdc++.h>
#include <math.h>
using namespace std;
int getDigitsCount(int n) {
   int digitsCount = 0;
   do {
      digitsCount++;
      n = n / 10;
   }
   while (n != 0);
      return digitsCount;
}
bool isDeseriumNumber(int n) {
   int originalNumber = n;
   int digitsCount = getDigitsCount(n);
   int sum = 0;
   while (n != 0) {
      int digit = n % 10;
      sum += pow(digit, digitsCount);
      digitsCount--;
      n = n / 10;
   }
   return sum == originalNumber;
}
int main() {
   int n = 135;
   // int n = 123;
   if (isDeseriumNumber(n)) {
      cout << "Yes";
   }
   else {
      cout << "No";
   }
   cout << endl;
   return 0;
}

輸出

如果你執行以上程式碼,那麼你將會得到以下結果。

Yes

結論

如果你對本教程有任何疑問,請在評論區中提出。

更新於: 2021 年 1 月 27 日

85 人瀏覽

開啟你的職業生涯

完成課程獲得認證

立即開始
廣告