首頁 >後端開發 >C++ >在C++中,將滿足數字總和為十的第n個數字進行翻譯

在C++中,將滿足數字總和為十的第n個數字進行翻譯

WBOY
WBOY轉載
2023-09-05 08:41:041039瀏覽

在C++中,將滿足數字總和為十的第n個數字進行翻譯

各位數字和等於10的數字有

19、28、37、46、55、64、73、82、91等,

如果你觀察這個數列,每個數字都加9。在上面的序列中,在加9的過程中,有一些數字的數字和不等於10。但是,你會得到所有數字和等於10的數字。

因此,我們可以有一個循環,以 9 遞增並檢查數字總和並找到第 n 個數字。讓我們來看看一些範例

輸入

3
7

#輸出

37
73

演算法

    ##初始化數字
  • n
  • 將計數器初始化為0。
  • 寫一個從
  • 19
      如果目前數字總和為 10,則將計數器加 1 的循環。
    • 如果計數器等於n,則傳回目前數字。
    • 將迭代變數增加9。
實作

以下是上述演算法的C 實作
#include <bits/stdc++.h>
using namespace std;
int findNthNumber(int n) {
   int count = 0, i = 19;
   while (true) {
      int sum = 0;
      for (int number = i; number > 0; number = number / 10) {
         sum = sum + number % 10;
      }
      if (sum == 10) {
         count++;
      }
      if (count == n) {
         return i;
      }
      i += 9;
   }
   return -1;
}
int main() {
   int n = 7;
   cout << findNthNumber(7) << endl;
   return 0;
}
輸出

如果執行上面的程式碼,您將得到以下結果。

73

以上是在C++中,將滿足數字總和為十的第n個數字進行翻譯的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除