Computer >> Máy Tính >  >> Lập trình >> C ++

Đếm các chữ số chẵn và lẻ trong một Số nguyên trong C ++

Chúng ta được cung cấp với một số nguyên và nhiệm vụ là đếm số chẵn và số lẻ trong một chữ số. Ngoài ra, chúng tôi sẽ tiếp tục kiểm tra xem các chữ số chẵn trong một số nguyên có xảy ra một số chẵn hay không và các chữ số lẻ trong một số nguyên có xảy ra một số lẻ lần nữa hay không.

Ví dụ

Input − digit = 12345
Output − count for even digits = 2
      count for odd digits = 3

Giải thích - Có, Ngoài ra, các chữ số chẵn xảy ra với số lần chẵn, tức là 2 và các chữ số lẻ xảy ra với số lẻ lần, tức là 3

Input − digit = 44556
Output − count for even digits = 3
      count for odd digits = 2

Giải thích-:KHÔNG, vì các chữ số chẵn xuất hiện số lẻ lần, tức là 3 và các chữ số lẻ xuất hiện số chẵn lần, tức là 2

Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau

  • Nhập giá trị số nguyên bao gồm các chữ số chẵn và lẻ

  • Khai báo hai biến, một để đếm các chữ số lẻ và một để đếm các chữ số chẵn và khởi tạo chúng bằng 0.

  • Bắt đầu vòng lặp, trong khi chữ số lớn hơn 0 và giảm nó bằng "chữ số / 10" để chúng tôi sẽ tìm nạp các chữ số riêng lẻ trong một số nguyên.

  • Nếu chữ số chia hết cho nó là số chẵn thì nó sẽ là số lẻ.

  • Nếu chữ số tìm được là chẵn, hãy tăng số chẵn lên 1 và nếu chữ số tìm được là lẻ, hãy tăng số đếm cho số lẻ 1

  • Bây giờ, để kiểm tra xem các chữ số chẵn có xảy ra một số lần chẵn hay không, hãy chia số chẵn cho 2, nếu nó đến 0 thì nó xảy ra một số chẵn lần khác nó xảy ra một số lần lẻ.

  • Và để kiểm tra xem các chữ số lẻ có xảy ra một số lần lẻ hay không, hãy chia số lẻ cho 2, nếu nó đến! 0 thì nó đang xảy ra một số lẻ lần khác nó xảy ra một số lần chẵn.

  • In kết quả.

Ví dụ

#include <iostream>
using namespace std;
int main(){
   int n = 12345, e_count = 0, o_count = 0;
   int flag;
   while (n > 0){
      int rem = n % 10;
      if (rem % 2 == 0){
         e_count++;
      } else {
         o_count++;
      }
      n = n / 10;
   }
   cout << "Count of Even numbers : "<< e_count;
   cout << "\nCount of Odd numbers : "<< o_count;
   // To check the count of even numbers is even and the
   // count of odd numbers is odd
   if (e_count % 2 == 0 && o_count % 2 != 0){
      flag = 1;
   } else {
      flag = 0;
   }
   if (flag == 1){
      cout << "\nYes " << endl;
   } else {
      cout << "\nNo " << endl;
   }
   return 0;
}

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -

Count of Even numbers : 2
Count of Odd numbers : 3
Yes