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

Trừ Tích và Tổng các chữ số của một số nguyên trong C ++

Giả sử chúng ta có một số. Chúng ta phải tìm tổng các chữ số và tích các chữ số. Sau đó tìm sự khác biệt giữa tổng và tích. Vì vậy, nếu số là 5362, thì tổng là 5 + 3 + 6 + 2 =16 và 5 * 3 * 6 * 2 =180. Vậy 180 - 16 =164

Để giải quyết vấn đề này, hãy lấy từng chữ số và cộng và nhân với một, sau đó trả về số chênh lệch.

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
      int subtractProductAndSum(int n) {
         int prod = 1;
         int sum = 0;
         for(int t = n;t;t/=10){
            sum += t % 10;
            prod *= t % 10;
         }
         return prod - sum;
      }
};
main(){
   Solution ob;
   cout << ob.subtractProductAndSum(5362);
}

Đầu vào

5362

Đầu ra

164