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

Kiểm tra xem a + b =c có hợp lệ không sau khi loại bỏ tất cả các số 0 khỏi a, b và c trong C ++

Giả sử chúng ta có ba số a, b, c, chúng ta phải kiểm tra xem a + b =c, sau khi loại bỏ tất cả các số 0 khỏi các số hay không. Giả sử các số là a =102, b =130, c =2005, thì sau khi loại bỏ các số 0, các số sẽ là a + b =c:(12 + 13 =25) điều này đúng

Chúng tôi sẽ xóa tất cả các số 0 khỏi một số, sau đó chúng tôi sẽ kiểm tra sau khi loại bỏ các số 0, a + b =c hay không.

Ví dụ

#include <iostream>
#include <algorithm>
using namespace std;
int deleteZeros(int n) {
   int res = 0;
   int place = 1;
   while (n > 0) {
      if (n % 10 != 0) { //if the last digit is not 0
         res += (n % 10) * place;
         place *= 10;
      }
      n /= 10;
   }
   return res;
}
bool isSame(int a, int b, int c){
   if(deleteZeros(a) + deleteZeros(b) == deleteZeros(c))
      return true;
   return false;
}
int main() {
   int a = 102, b = 130, c = 2005;
   if(isSame(a, b, c))
      cout << "a + b = c is maintained";
   else
      cout << "a + b = c is not maintained";
}

Đầu ra

a + b = c is maintained