编写程序,实现以下功能,程序依次接收20行用户通过键盘输入的数据,每行数据均为由三 个英文点号分开的4个整数数据,示例如下: 10. 186. 1. 1 256. 0. 0. 3 192. 168. 0. 255 (#2015 ) 对于每行中的每个整数数据,值的范围应介于 0(含)到255 (含)之间。因此,以上示例中 10.186.1.1和 192. 168.0.255 为两条合规数据,256.0.0.3是一条非合规数 据。 程序逐行判读数据是否合规,并统计合规和不合规的数目,最后 按序分别输出合规和不合规数据的值(整数形式输出) 程序最后输出的结果类似如下两行数据(2行数值相加应为 20Python
时间: 2024-03-14 18:44:16 浏览: 134
js引入方式,三种输出方式,一种输入方式,变量,基本数据类型,复合数据类型,数据分析,判断数据类型,算数运算符
下面是Python实现该功能的代码:
```python
valid_count = 0
invalid_count = 0
valid_data = []
invalid_data = []
for i in range(20):
data = input().split('.')
valid = True
for num in data:
if int(num) < 0 or int(num) > 255:
valid = False
break
if valid:
valid_count += 1
valid_data += list(map(int, data))
else:
invalid_count += 1
invalid_data += list(map(int, data))
print("Valid data: ", valid_data)
print("Invalid data: ", invalid_data)
print("Valid count: ", valid_count)
print("Invalid count: ", invalid_count)
```
程序首先定义了四个变量:`valid_count`记录合规数据的数量,`invalid_count`记录不合规数据的数量,`valid_data`保存合规数据,`invalid_data`保存不合规数据。
然后使用for循环接收20行用户输入的数据,每行数据使用split('.')方法拆分为4个字符串,再使用int()方法转换为整数。接着遍历这4个整数,如果有任意一个整数的值小于0或大于255,则判定该数据为不合规数据,否则为合规数据。
如果该数据为合规数据,则将`valid_count`加1,并将该行数据的4个整数添加到`valid_data`列表中;如果该数据不合规,则将`invalid_count`加1,并将该行数据的4个整数添加到`invalid_data`列表中。
最后输出合规数据和不合规数据的列表及其数量。
阅读全文