用python实现并写出以下代码:从键盘输入非0整数,以输入0为输入结束标志,求平均值,统计正数负数个数 【输入形式】 每个整数一行。最后一行是0,表示输入结束。 【输出形式】 输出三行。 第一行是平均值。第二行是正数个数。第三行是负数个数。
时间: 2023-06-08 10:03:55 浏览: 79
可以使用以下Python代码实现:
num_list = []
pos_num = 0
neg_num = 0
while True:
num = int(input())
if num == 0:
break
num_list.append(num)
if num > 0:
pos_num += 1
elif num < 0:
neg_num += 1
avg = sum(num_list) / len(num_list)
print(avg)
print(pos_num)
print(neg_num)
注意:该代码只能判断输入的数是否为非0整数,不能判断输入是否符合要求(例如输入字母会导致程序出错)。另外,由于涉及数值计算,输入的数值过大或过小可能会导致错误的计算结果,需要注意。
相关问题
用Python写从键盘输入非0整数,以输入0为输入结束标志,求平均值,统计正数负数个数
num_list = []
positive_num = 0
negative_num = 0
while True:
num = int(input("请输入一个非0整数:"))
if num == 0:
break
num_list.append(num)
if num > 0:
positive_num += 1
else:
negative_num += 1
if len(num_list) == 0:
print("没有输入任何数字!")
else:
average = sum(num_list) / len(num_list)
print("平均值为:", average)
print("正数个数为:", positive_num)
print("负数个数为:", negative_num)
用Python。从键盘输入非0整数,以输入0为输入结束标志,求平均值,统计正数负数个数
```python
sum = 0
count_positive = 0
count_negative = 0
while True:
num = int(input("请输入一个非0整数(输入0结束):"))
if num == 0:
break
sum += num
if num > 0:
count_positive += 1
else:
count_negative += 1
if count_positive + count_negative == 0:
print("没有输入任何数字!")
else:
average = sum / (count_positive + count_negative)
print("平均值为:", average)
print("正数个数为:", count_positive)
print("负数个数为:", count_negative)
```
示例输出:
```
请输入一个非0整数(输入0结束):3
请输入一个非0整数(输入0结束):-5
请输入一个非0整数(输入0结束):2
请输入一个非0整数(输入0结束):0
平均值为: 0.0
正数个数为: 2
负数个数为: 1
```