题目内容: 你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。 输入格式: 一系列正整数,整数的范围是(0,100000)。如果输入-1则表示输入结束。 输出格式: 两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。两个整数之间以空格分隔。 输入样例: 9 3 4 2 5 7 -1 输出样例: 4 2
时间: 2024-04-16 21:28:51 浏览: 128
以下是解决这个问题的一个可能的实现方式:
```python
def count_odd_even_numbers():
odd_count = 0
even_count = 0
while True:
num = int(input())
if num == -1:
break
if num % 2 == 0:
even_count += 1
else:
odd_count += 1
return odd_count, even_count
odd_count, even_count = count_odd_even_numbers()
print(odd_count, even_count)
```
这个程序定义了一个函数 `count_odd_even_numbers()`,用于读取一系列正整数,并统计其中奇数和偶数的个数。使用一个无限循环来不断读取输入的整数,如果读到的整数为 -1,则退出循环。每读取一个整数,判断它是奇数还是偶数,然后更新相应的计数器。最后返回奇数和偶数的个数。
在主程序中调用 `count_odd_even_numbers()` 函数,并将返回的奇数和偶数个数打印出来。
注意:由于题目要求的输入输出格式比较简单,这里未做输入异常处理和错误提示。实际应用中,可能需要对输入进行验证和异常处理。
相关问题
1奇偶个数(5分) 题目内容: 你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。 输入格式: 一系列正整数,整数的范围是(0,100000)。如果输入-1则表示输入结束。 输出格式: 两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。两个整数之间以空格分隔。 输入样例: 9 3 4 2 5 7 -1 输出样例: 4 2
n = int(input()) # 读入一个整数
odd = 0 # 记录奇数个数的变量
even = 0 # 记录偶数个数的变量
while n != -1: # 当输入不是-1时循环
if n % 2 == 0: # 判断n是否是偶数
even += 1 # 如果是偶数,偶数个数加1
else:
odd += 1 # 如果不是偶数,奇数个数加1
n = int(input()) # 继续读入下一个整数
print(odd, even) # 输出奇数个数和偶数个数
用c语言1奇偶个数(5分) 题目内容: 你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。 输入格式: 一系列正整数,整数的范围是(0,100000)。如果输入-1则表示输入结束。 输出格式: 两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。两个整数之间以空格分隔。 输入样例: 9 3 4 2 5 7 -1 输出样例: 4 2
#include <stdio.h>
int main()
{
int n, odd = 0, even = 0;
scanf("%d", &n);
while (n != -1)
{
if (n % 2 == 0)
even++;
else
odd++;
scanf("%d", &n);
}
printf("%d %d", odd, even);
return 0;
}
阅读全文