题目描述
有一天, 小明收到一张奇怪的信, 信上要小明计算出给定数各个位上数字为偶数的和。
例如:5548,结果为12,等于 4 + 8 。
小明很苦恼,想请你帮忙解决这个问题。
输入描述
输入数据有多组。每组占一行,只有一个整整数,保证数字在32位整型范围内。
输出描述
对于每组输入数据,输出一行,每组数据下方有一个空行。
输入示例
415326
3262
输出示例
12
10
思路:
单个数字不能用数组来实现遍历每个元素,但是可以通过取模运算和整数除法来分解一个整数并获取其各位数字。
通过取余num%10获取最后一位数字,%表示取模 /表示取余运算
使用整数除法number/=10来去掉最后一位数字,这个过程一直重复,知道number=0为止
如果一个数是123
1.123%10=3,取出个位数3,然后123/10=12;//将最后一位舍去
2.12%10=2,取出最后一位,也就是十位数,然后12/10=1,将最后一位舍去
3.1%10=1,取出最后1位,也就是百位数,然后1/10=0,将最后1位舍去
代码实现:
#include<iostream>
using namespace std;
int main(){
int n;
int a;
while(cin>>n){
int result=0;
while(n!=0){
a=n%10;
n=n/10;
if(a%2==0){
result+=a;
}
}
cout<<result<<endl;
cout<<endl;
}
}