在C++中,移除a、b和c中的所有零后,检查a + b = c是否有效
假设我们有三个数字a、b、c,我们需要检查在移除所有数字中的0之后,a + b = c是否成立。例如,数字为a = 102,b = 130,c = 2005,则移除0后,a + b = c变为:(12 + 13 = 25),这是正确的。
我们将移除一个数字中的所有0,然后检查移除0后,a + b = c是否成立。
示例
#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"; }
输出
a + b = c is maintained
广告