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

นับหลักคู่และหลักคี่ในจำนวนเต็มใน C++

เราได้รับจำนวนเต็ม งานคือการนับจำนวนหลักคู่และหลักคี่ และตรวจสอบว่าหลักคู่เกิดขึ้นจำนวนคู่ครั้ง และหลักคี่เกิดขึ้นจำนวนคี่ครั้งหรือไม่

ตัวอย่าง

Input − digit = 12345 Output − even: 2, odd: 3 → Yes

คำอธิบาย − หลักคู่: 2,4 (2 หลัก = จำนวนคู่) หลักคี่: 1,3,5 (3 หลัก = จำนวนคี่)

Input − digit = 44556 Output − even: 3, odd: 2 → No

คำอธิบาย − หลักคู่: 4,4,6 (3 หลัก = จำนวนคี่) หลักคี่: 5,5 (2 หลัก = จำนวนคู่) ไม่ตรงเงื่อนไข

แนวทางการแก้ปัญหา

  • แยกแต่ละหลักด้วย n % 10 และ n /= 10
  • นับหลักคู่และหลักคี่แยกกัน
  • ตรวจสอบ: even_count % 2 == 0 และ odd_count % 2 == 1

ตัวอย่างโค้ด C++

#include <iostream>
using namespace std;

int main() {
    int n = 12345, even = 0, odd = 0;
    while (n > 0) {
        int digit = n % 10;
        if (digit % 2 == 0) even++;
        else odd++;
        n /= 10;
    }
    cout << "Even: " << even << ", Odd: " << odd << endl;
    if (even % 2 == 0 && odd % 2 != 0)
        cout << "Yes";
    else
        cout << "No";
    return 0;
}

ผลลัพธ์

Even: 2, Odd: 3
Yes

บทความนี้สาธิตการนับหลักคู่และหลักคี่ในจำนวนเต็ม พร้อมตรวจสอบเงื่อนไขว่าหลักคู่ต้องมีจำนวนคู่ครั้ง และหลักคี่ต้องมีจำนวนคี่ครั้ง