Files
2025PY/day07/06-综合作业.py
2025-05-22 16:50:44 +08:00

187 lines
4.6 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 基础练习
# 判断奇偶数
num = int(input("请输入一个整数: "))
if num % 2 == 0:
print("这是一个偶数")
else:
print("这是一个奇数")
# 判断正数、负数或零
num = float(input("请输入一个数字: "))
if num > 0:
print("正数")
elif num < 0:
print("负数")
else:
print("")
# 比较两个数的大小
a = int(input("输入第一个数: "))
b = int(input("输入第二个数: "))
if a > b:
print("第一个数较大")
elif a < b:
print("第二个数较大")
else:
print("两个数相等")
# 判断闰年
year = int(input("请输入年份: "))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print("闰年")
else:
print("平年")
# 判断字符是否是元音字母
char = input("请输入一个字符: ").lower()
if char in "aeiou":
print("是元音字母")
else:
print("不是元音字母")
# 进阶练习
# 计算折扣
price = float(input("请输入商品价格: "))
if price > 100:
discount = 0.2
elif price > 50:
discount = 0.1
else:
discount = 0.05
final_price = price * (1 - discount)
print(f"折扣后价格: {final_price:.2f}")
# 判断三角形类型
a, b, c = map(int, input("输入三条边的长度: ").split())
if a + b > c and a + c > b and b + c > a:
if a == b == c:
print("等边三角形")
elif a == b or a == c or b == c:
print("等腰三角形")
else:
print("普通三角形")
else:
print("不能构成三角形")
# 计算BMI指数
weight = float(input("请输入体重(kg): "))
height = float(input("请输入身高(m): "))
bmi = weight / (height ** 2)
if bmi < 18.5:
print("偏瘦")
elif bmi < 24:
print("正常")
elif bmi < 28:
print("偏胖")
else:
print("肥胖")
# 判断学生成绩等级
score = int(input("请输入成绩: "))
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 70:
print("中等")
elif score >= 60:
print("及格")
else:
print("不及格")
# 判断是否能领取驾照
age = int(input("请输入你的年龄: "))
if age >= 18:
print("可以申请驾照")
else:
print("未满18岁无法申请驾照")
# 高级练习
# 判断用户输入的用户名和密码是否正确
username = input("请输入用户名: ")
password = input("请输入密码: ")
if username == "admin" and password == "123456":
print("登录成功")
else:
print("用户名或密码错误")
# 模拟简单计算器
num1 = float(input("输入第一个数: "))
num2 = float(input("输入第二个数: "))
op = input("输入运算符 (+, -, *, /): ")
if op == "+":
print(f"结果: {num1 + num2}")
elif op == "-":
print(f"结果: {num1 - num2}")
elif op == "*":
print(f"结果: {num1 * num2}")
elif op == "/":
if num2 != 0:
print(f"结果: {num1 / num2}")
else:
print("错误:除数不能为零")
else:
print("无效运算符")
# 判断一个数是否是素数
num = int(input("请输入一个大于1的整数: "))
is_prime = True
if num > 1:
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
is_prime = False
break
else:
is_prime = False
print("是素数" if is_prime else "不是素数")
# 判断用户输入的年份是否为世纪年
year = int(input("请输入年份: "))
if year % 100 == 0:
print(f"{year} 是世纪年")
else:
print(f"{year} 不是世纪年")
# 判断一个数是否为回文数
num = input("请输入一个数字: ")
if num == num[::-1]:
print("是回文数")
else:
print("不是回文数")
# 判断用户名是否合法长度大于等于6
username = input("请输入用户名: ")
if len(username) >= 6:
print("用户名有效")
else:
print("用户名长度必须至少6个字符")
# 判断一个年份是否属于 21 世纪
year = int(input("请输入年份: "))
if 2001 <= year <= 2100:
print(f"{year} 属于 21 世纪")
else:
print(f"{year} 不属于 21 世纪")
# 判断数字是否在区间 [10, 50] 内
num = int(input("请输入一个数字: "))
if 10 <= num <= 50:
print(f"{num} 在区间 [10, 50] 内")
else:
print(f"{num} 不在区间 [10, 50] 内")
# 判断密码强度
password = input("请输入密码: ")
if len(password) >= 8 and any(c.isdigit() for c in password) and any(c.isalpha() for c in password):
print("密码强度较高")
else:
print("密码强度较低请包含字母和数字并且至少8位")
# 判断是否是工作日还是周末
day = int(input("请输入星期几 (1-7, 1代表星期一): "))
if 1 <= day <= 5:
print("工作日")
elif day == 6 or day == 7:
print("周末")
else:
print("输入错误")