题号 37220
密码强度判断
根据密码长度以及是否包含数字、小写字母、大写字母、特殊字符四类字符,输出 弱 / 中 / 强 / 极强。
标准答案
import string
pwd = input()
n1 = n2 = n3 = n4 = 0
for ch in pwd:
if ch in string.digits:
n1 = 1
if ch in string.ascii_lowercase:
n2 = 1
if ch in string.ascii_uppercase:
n3 = 1
if ch in string.punctuation:
n4 = 1
kinds = n1 + n2 + n3 + n4
if len(pwd) < 8 or kinds < 2:
result = '弱'
elif kinds == 2:
result = '中'
elif kinds == 3:
result = '强'
else:
result = '极强'
print(result)
题号 37223
随机题目评测
用随机种子生成两个 1~100 的整数和一个 “+” 或 “-” 运算符,打印表达式让用户答题,再判断正误。
标准答案
import random
user_seed = int(input())
random.seed(user_seed)
a = random.randint(1, 100)
b = random.randint(1, 100)
sign = random.choice('+-')
print(f'{a}{sign}{b}=?')
user_result = int(input())
right_result = eval(f'{a}{sign}{b}')
if user_result == right_result:
print('答案正确')
else:
print(f'{a}{sign}{b}={right_result}')
print('答案错误')
题号 37227
百钱买百鸡 A
枚举公鸡、母鸡、小鸡数量(均大于 0),满足总数 100 且总价 100(公 5 元、母 3 元、小鸡 3 只 1 元),逐行输出解。
标准答案
for cock in range(1, 101):
for hen in range(1, 101):
for chick in range(1, 101):
if chick % 3 == 0:
if cock + hen + chick == 100 and 5 * cock + 3 * hen + chick // 3 == 100:
print(cock, hen, chick)
题号 37224
分类统计字符
输入一行字符,统计其中字母(大写 + 小写)与其他字符的数量,并以空格分隔输出。
标准答案
text = input()
letters = 0
others = 0
for ch in text:
if ch.isalpha():
letters += 1
else:
others += 1
print(letters, others)
题号 37221
质数输出
输入 n,输出不大于 n 的所有质数,数字之间保持一个空格,末尾按需求保留空格。
标准答案
num = int(input())
for n in range(2, num + 1):
for i in range(2, n):
if n % i == 0:
break
else:
print(n, end=' ')
题号 37218
用户登录 A
读取用户名与密码,只有 admin / 123456 才提示“登录成功”,否则输出“登录失败”。
标准答案
username = input()
password = input()
if username == 'admin' and password == '123456':
print('登录成功')
else:
print('登录失败')
题号 37226
验证码校验
固定验证码为 Qs2X,不区分大小写,匹配成功输出“验证码正确”,否则输出“验证码错误”。
标准答案
user_code = input()
if user_code.upper() == 'Qs2X'.upper():
print('验证码正确')
else:
print('验证码错误')
题号 37216
一元二次方程求根
输入 a、b、c,考虑特殊情况(a=0、无实数根、重根),按照题意格式输出,结果保留 2 位小数。
标准答案
a = float(input())
b = float(input())
c = float(input())
if a == 0:
if b == 0:
print('error')
else:
print('{:.2f}'.format(-c / b))
else:
delta = b * b - 4 * a * c
if delta < 0:
print('该方程无实数解')
elif delta == 0:
print('{:.2f}'.format(-b / (2 * a)))
else:
x1 = (-b + delta ** 0.5) / (2 * a)
x2 = (-b - delta ** 0.5) / (2 * a)
if x1 < x2:
x1, x2 = x2, x1
print('{:.2f} {:.2f}'.format(x1, x2))
题号 37219
出租车计费
根据里程 d(整数),按 3 公里 13 元、3~15 公里额外 2.3 元/公里、超过 15 公里 2.8 元/公里计费,输出保留 0 位小数的费用。
标准答案
d = int(input())
if d <= 3:
fee = 13
elif d <= 15:
fee = 13 + (d - 3) * 2.3
else:
fee = 13 + (15 - 3) * 2.3 + (d - 15) * 2.8
print('{:.0f}'.format(fee))
题号 37217
判断三角形并求面积
输入三条边判断能否构成三角形;若能,输出 YES 与面积(海伦公式,保留两位小数),否则输出 NO。
标准答案
a = float(input())
b = float(input())
c = float(input())
if a + b > c and a + c > b and b + c > a:
p = (a + b + c) / 2
area = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print('YES')
print('{:.2f}'.format(area))
else:
print('NO')