给我们一个整数,任务是计算一个数字中的偶数和奇数。另外,我们将继续检查整数中的偶数是否出现偶数次,并且整数中的奇数位是否出现奇数次。
Input − digit = 12345Output − count for even digits = 2 count for odd digits = 3
说明-是的,此外,偶数出现偶数次,即2,奇数位出现奇数次,即3
Input − digit = 44556Output − count for even digits = 3 count for odd digits = 2
说明-:否,因为偶数出现的次数是奇数,即3,而奇数出现的次数是偶数,即2
输入由奇数和偶数组成的整数值
声明两个变量,一个变量用于计数奇数位,另一个变量用于计数偶数位,并将其初始化为0。
在数字大于0时开始循环,并用“ digit / 10”将其递减,这样我们将获取整数中的各个数字。
如果数字可被整除,则该数字将被偶数整除,否则它将是奇数。
如果找到的数字是偶数,则将偶数加1;如果找到的数字是奇数,则将奇数加1
现在,要检查偶数位是否出现偶数次,请将偶数除以2,如果偶数为0,则偶数为偶数次,否则为奇数倍。
为了检查奇数位是否出现奇数次,请将奇数除以2,如果奇数为!0,则为奇数次,否则为偶数次。
打印结果。
#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;
   //要检查偶数的计数是偶数,则
   //奇数计数是奇数
   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;
}输出结果
如果我们运行上面的代码,它将生成以下输出-
Count of Even numbers : 2 Count of Odd numbers : 3 Yes