卡码网 8.奇怪的信

题目描述

有一天, 小明收到一张奇怪的信, 信上要小明计算出给定数各个位上数字为偶数的和。
例如: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;
    }
}
    
    
    
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值