给我们一个整数,任务是计算一个数字中的偶数和奇数。另外,我们将继续检查整数中的偶数是否出现偶数次,并且整数中的奇数位是否出现奇数次。
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