Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

หาผลรวมของหลักเลขคี่และคู่ของจำนวนเต็มใน C++

สมมติว่าเรามีจำนวนเต็ม N เราต้องหาผลรวมของหลักเลขในตำแหน่งคี่และตำแหน่งคู่ ดังนั้นถ้าตัวเลขเป็น 153654 ผลรวมตำแหน่งคี่ = 9 และผลรวมตำแหน่งคู่ = 15

เพื่อแก้ปัญหานี้ เราสามารถแยกหลักเลขทั้งหมดจากหลักสุดท้าย หากตัวเลขต้นฉบับมีจำนวนหลักเป็นคี่ หลักสุดท้ายต้องอยู่ในตำแหน่งคี่ มิฉะนั้นจะเป็นตำแหน่งคู่ หลังจากประมวลผลหลักเลขหนึ่งหลัก เราสามารถสลับสถานะจากคี่เป็นคู่และในทางกลับกัน

ตัวอย่าง

#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);
}

ผลลัพธ์

Sum odd : 9
Sum even : 15