C++ 统计数组中位数为偶数的数字个数
使用 C++ 统计数组中位数为偶数的数字个数
给定一个整数数组 nums,请你返回其中位数为偶数的数字的个数。
#include <vector>
int findNumbers(std::vector<int>& nums) {
int count = 0;
for (int num : nums) {
int digitCount = 0;
while (num != 0) {
num /= 10;
digitCount++;
}
if (digitCount % 2 == 0) {
count++;
}
}
return count;
}
代码解释:
-
**定义变量:**首先,我们定义一个变量
count,用于记录位数为偶数的数字的个数。 -
**遍历数组:**然后,我们遍历给定的整数数组
nums。 -
**计算位数:**对于数组中的每个元素
num,我们通过循环计算其位数,即不断将num除以 10,直到num变为 0,同时累加digitCount的值。 -
**判断位数奇偶性:**然后,我们判断
digitCount是否为偶数,如果是,则将count的值加 1。 -
**返回结果:**最后,返回
count的值作为结果。
示例:
std::vector<int> nums = {12, 345, 2, 6, 7896};
int result = findNumbers(nums);
std::cout << "位数为偶数的数字个数:" << result << std::endl;
输出:
位数为偶数的数字个数:2
代码示例说明:
- 数组
nums中包含 5 个数字:12,345,2,6,7896。 - 其中位数为偶数的数字有:12,2,6,共 2 个。
- 因此函数
findNumbers返回值为 2。
原文地址: https://www.cveoy.top/t/topic/phdi 著作权归作者所有。请勿转载和采集!