Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm tổng các chữ số của một số cho đến khi tổng trở thành một chữ số trong C ++

Trong hướng dẫn này, chúng ta sẽ viết một chương trình tính tổng các chữ số của một số đã cho cho đến khi nó trở thành một chữ số duy nhất. Hãy xem một ví dụ.

Đầu vào −4543

Đầu ra −7

Hãy xem các bước để giải quyết vấn đề.

  • Khởi tạo một số.

  • Khởi tạo tổng thành 0.

  • Lặp lại cho đến khi tổng nhỏ hơn 9.

    • Thêm từng chữ số của số vào tổng bằng toán tử modulo

  • In tổng số

Ví dụ

Hãy xem mã.

#include <bits/stdc++.h>
using namespace std;
void findTheSingleDigit(int n) {
   int sum = 0;
   while(n > 0 || sum > 9) {
      if(n == 0) {
         n = sum;
         sum = 0;
      }
      sum += n % 10;
      n /= 10;
   }
   cout << sum << endl;
}
int main() {
   int n = 4543;
   findTheSingleDigit(n);
   return 0;
}

Đầu ra

bạn thực hiện chương trình trên, sau đó bạn sẽ nhận được kết quả sau.

7

Chúng tôi có một phương pháp đơn giản khác để giải quyết vấn đề. Nếu số đã cho chia hết cho 9 thì câu trả lời là 9. Khác số nếu n% 9 .

Ví dụ

Hãy xem mã.

#include <bits/stdc++.h>
using namespace std;
void findTheSingleDigit(int n) {
   if (n == 0) {
      cout << 0;
   }
   else if (n % 9 == 0) {
      cout << 9 << endl;
   }
   else {
      cout << n % 9 << endl;
   }
}
int main() {
   int n = 4543;
   findTheSingleDigit(n);
   return 0;
}

Đầu ra

Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.

7

Kết luận

Nếu bạn có bất kỳ câu hỏi nào trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.