Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Tìm tổng các chữ số ở vị trí chẵn và lẻ của một số trong C++


Giả sử có số nguyên N, tìm tổng các chữ số ở vị trí lẻ và vị trí chẵn. Ví dụ 153654: odd_sum = 9, even_sum = 15.

Giải pháp: trích xuất các chữ số từ chữ số cuối. Nếu số chữ số ban đầu là lẻ, chữ số cuối ở vị trí lẻ, ngược lại thì chẵn. Sau mỗi chữ số, đảo trạng thái chẵn/lẻ.

Ví dụ

#include<iostream> using namespace std; bool isOdd(int x){    if(x % 2 == 0)    return false;    return true; } void getSum(int n) {    bool odd_check = isOdd(n);    int odd_sum = 0, even_sum = 0;    while (n != 0) {       if (odd_check)          odd_sum += n % 10;       else          even_sum += n % 10;       odd_check = !odd_check;       n /= 10;    }    cout << "Sum odd : " << odd_sum << endl;    cout << "Sum even : " << even_sum; } int main() {    int n = 153654;    getSum(n); }

Kết quả

Sum odd : 9 Sum even : 15