编写一个程序来读入不指定个数的整数,然后统计读取的整数中有多少个正数和多少个负数并计算这些输入值的平均值。 输入格式: 在一行中输入若干个整数,以逗号分隔。 输出格式: 在第一行输出正数和负数的个数,以逗号分隔。 在第二行输出它们的平均值(保留小数后两位,如:12.30)。 输入样例: 在这里给出一组输入。例如: 12,3,-2,-56,100,62 输出样例: 在这里给出相应的输出。例如: 4,2 19.83
时间: 2024-02-27 13:53:06 浏览: 126
以下是Python代码实现:
```python
nums = input().split(",")
pos_count = 0 # 正数个数
neg_count = 0 # 负数个数
total = 0 # 整数总和
for num in nums:
num = int(num.strip())
if num > 0:
pos_count += 1
elif num < 0:
neg_count += 1
total += num
avg = round(total / len(nums), 2)
print("{},{}".format(pos_count, neg_count))
print("{:.2f}".format(avg))
```
代码思路:
1. 用 `input()` 函数读取输入的一行字符串,然后用 `split()` 方法将其分割成若干个字符串,存放在列表 `nums` 中。
2. 初始化三个变量 `pos_count`、`neg_count` 和 `total` 分别表示正数个数、负数个数和整数总和。
3. 遍历列表 `nums` 中的每个字符串,将其转换成整数 `num`,然后根据其正负性分别更新 `pos_count` 和 `neg_count`,并将其加到 `total` 中。
4. 计算所有整数的平均值 `avg`,保留两位小数,使用 `round()` 函数实现。
5. 使用 `print()` 函数输出结果。注意格式化输出,第一个输出语句使用 `format()` 方法将 `pos_count` 和 `neg_count` 拼接成字符串,第二个输出语句使用格式化字符串 `{:.2f}` 将 `avg` 输出为保留两位小数的浮点数。
阅读全文