C++程式中給定大整數的數字根(重複數字和)


在本教程中,我們將學習如何查詢給定數字的數字根。

數字根是數字的數字之和(直到數字之和變成一位數)。

我們得到一個字串格式的整數。我們必須反覆求數字之和,直到和變成一位數。

讓我們看看解決問題的步驟。

  • 初始化一個字串格式的整數。

  • 遍歷數字並將每個數字新增到sum變數。

  • 如果sum為0,則列印0。

  • 否則,如果sum可被9整除,則答案為9。

  • 否則,答案為sum模9。

示例

讓我們看看程式碼。

 線上演示

#include<bits/stdc++.h>
using namespace std;
int digitalRoot(string n) {
   int digitsSum = 0;
   for (int i = 0; i < n.length(); i++) {
      digitsSum += n[i] - '0';
   }
   if (digitsSum == 0) {
      return 0;
   }
   return digitsSum % 9 == 0 ? 9 : digitsSum % 9;
}
int main() {
   string n = "12345";
   cout << digitalRoot(n) << endl;
   return 0;
}

輸出

如果執行上述程式碼,則會得到以下結果。

6

結論

如果您在本教程中有什麼疑問,請在評論區提出。

更新於:2021年1月27日

930 次瀏覽

啟動您的職業生涯

完成課程後獲得認證

開始學習
廣告
© . All rights reserved.