法定婚龄

所属作业: hw4 算法: 分支

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
# 从输入中读取一行数据,并根据空格分隔成一个列表
string = input().split()

# 解析性别和年龄
g1, a1 = string[0], int(string[1])  # 第一个人的性别和年龄
g2, a2 = string[2], int(string[3])  # 第二个人的性别和年龄

# 判断性别,并将年龄分别赋值给男性和女性
if g1 == 'M':
    m, f = a1, a2  # 如果第一个人是男性,m为其年龄,f为第二个人的年龄
else:
    m, f = a2, a1  # 如果第一个人是女性,m为第二个人的年龄,f为第一个人的年龄

# 判断婚龄是否合法
if m >= 22 and f >= 20:  # 男性年龄大于等于22且女性年龄大于等于20
    print('legal')  # 合法
else:
    print('illegal')  # 不合法

错误代码1

1
2
3
4
5
6
7
8
9
a, b, c, d = input().split()
b = int(b)
d = int(d)
if a == "M" and b < 22:
    print("illegal")
elif a == "F" and b < 20:
    print("illegal")
else:
    print("legal")

测试:

M 22 F 19

修改以后

1
2
3
4
5
6
7
8
9
a, b, c, d = input().split()
b = int(b)
d = int(d)
if a == "M" and (b < 22 or d < 20):
    print("illegal")
elif a == "F" and (b < 20 or d < 22):
    print("illegal")
else:
    print("legal")

错误代码2

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
g1, a1, g2, a2 = input().split()
a1 = int(a1)
a2 = int(a2)

if g1 == "M" and g2 == "F":
    if a1 >= 22 and a2 >= 20:
        print("legal")
elif g1 == "F" and g2 == "M":
    if a1 >= 20 and a2 >= 22:
        print("legal")

else:
    print("illegal")

测试:

M 22 F 19

修改以后

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
g1, a1, g2, a2 = input().split()
a1 = int(a1)
a2 = int(a2)

if g1 == "M" and g2 == "F":
    if a1 >= 22 and a2 >= 20:
        print("legal")
    else:
        print("illegal")
elif g1 == "F" and g2 == "M":
    if a1 >= 20 and a2 >= 22:
        print("legal")
    else:
        print("illegal")