给定N个正整数,请统计奇数和偶数各有多少个? 输入格式: 输入第一行给出一个正整N(≤1000);第2行给出N个非负整数,以空格分隔。 输出格式: 在一行中先后输出奇数的个数、偶数的个数。中间以1个空格分隔。
时间: 2023-09-15 09:05:15 浏览: 121
### 回答1:
我可以回答这个问题。您可以使用一个循环来遍历输入的N个正整数,然后使用取模运算符来判断每个数字是奇数还是偶数。如果一个数字除以2的余数为0,则它是偶数,否则它是奇数。在循环中,您可以使用两个计数器来分别计算奇数和偶数的数量,并在循环结束后输出这两个计数器的值。以下是示例代码:
```
#include <stdio.h>
int main()
{
int n, num, odd_count = 0, even_count = 0;
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
scanf("%d", &num);
if (num % 2 == 0)
even_count++;
else
odd_count++;
}
printf("%d %d", odd_count, even_count);
return 0;
}
```
输入示例:
```
5
1 2 3 4 5
```
输出示例:
```
3 2
```
### 回答2:
首先,我们需要读取输入,包括N的值和N个非负整数。假设N的值存储在变量N中,N个非负整数存储在列表nums中。
我们可以使用两个变量odd和even来统计奇数和偶数的个数。初始时,odd和even都为0。
然后,我们遍历列表nums中的每个数,对于每个数num,判断它是奇数还是偶数,如果是奇数,就将odd加1;如果是偶数,就将even加1。
遍历完所有的数后,我们将odd和even分别输出,中间用一个空格分隔。
下面是具体的代码实现:
```
N = int(input())
nums = list(map(int, input().split()))
odd = 0
even = 0
for num in nums:
if num % 2 == 0:
even += 1
else:
odd += 1
print(odd, even)
```
这样就可以统计出给定的N个正整数中奇数和偶数的个数,并将结果输出。
### 回答3:
题目要求统计给定N个正整数中的奇数和偶数的个数。
解题思路:
1. 读取输入的N和N个非负整数。
2. 初始化奇数和偶数的计数器,分别记为odd_count和even_count,初始值为0。
3. 遍历N个非负整数:
- 如果当前数字是奇数,则奇数计数器加1。
- 如果当前数字是偶数,则偶数计数器加1。
4. 输出奇数计数器和偶数计数器的值,中间以一个空格分隔。
代码实现如下:
```python
N = int(input()) # 输入N
nums = input().split() # 读取N个非负整数,并以空格分隔
odd_count = even_count = 0 # 初始化奇数和偶数的计数器
for num in nums:
if int(num) % 2 == 0:
even_count += 1 # 如果是偶数,偶数计数器加1
else:
odd_count += 1 # 如果是奇数,奇数计数器加1
print(odd_count, even_count) # 输出奇数计数器和偶数计数器的值
```
注意事项:
- 输入的N个非负整数可能是字符串形式,需要将其转换为整数类型进行判断。
- 输出时奇数和偶数的个数之间以一个空格分隔。
阅读全文