90 lines
3.6 KiB
Python
90 lines
3.6 KiB
Python
# 第 1-5 课课堂练习:Agent 学习状态评估器
|
||
#
|
||
# 完成要求:
|
||
# 1. 根据注释使用 if、elif 和 else 编写条件分支。
|
||
# 2. 注意英文冒号和四个空格缩进。
|
||
# 3. 数字输入需要转换为正确类型。
|
||
# 4. 布尔状态应使用比较结果生成,不要保存成 "True" 或 "False" 字符串。
|
||
# 5. 不要删除题目注释。
|
||
# 6. 完成后使用题目末尾提供的多组数据测试程序。
|
||
|
||
|
||
# 练习一:接收用户每天学习的小时数。
|
||
# 使用 float() 转换,并保存到 daily_hours。
|
||
|
||
# 练习二:询问用户是否完成本课练习,约定输入 yes 或 no。
|
||
# 将原始输入保存到 practice_answer。
|
||
# 使用 == 比较 practice_answer 是否等于 "yes",把布尔结果保存到 practice_finished。
|
||
|
||
# 练习三:接收测验成绩,成绩范围为 0 到 100。
|
||
# 使用 float() 转换,并保存到 score。
|
||
|
||
# 练习四:使用 if...elif...else 判断成绩等级。
|
||
# 必须先判断 score 是否小于 0 或大于 100:
|
||
# - 范围无效:score_level = "输入无效"
|
||
# - 90 分及以上:score_level = "优秀"
|
||
# - 80 分及以上:score_level = "良好"
|
||
# - 60 分及以上:score_level = "合格"
|
||
# - 其余有效成绩:score_level = "未通过"
|
||
|
||
# 练习五:创建三个布尔变量。
|
||
# 1. score_is_valid:成绩是否处于 0 到 100 之间,请使用链式比较;
|
||
# 2. score_is_passed:成绩是否大于或等于 60;
|
||
# 3. learning_time_is_enough:每天学习时间是否大于或等于 1 小时。
|
||
|
||
# 练习六:判断是否可以继续下一课。
|
||
# 只有以下四个条件全部成立时,can_continue 才为 True:
|
||
# - 成绩范围有效;
|
||
# - 成绩通过;
|
||
# - 已经完成练习;
|
||
# - 每天学习时间达到 1 小时。
|
||
# 请使用 and 组合条件,把结果保存到 can_continue。
|
||
|
||
# 练习七:输出由 30 个等号组成的分隔线,再输出成绩等级。
|
||
|
||
# 练习八:使用 if...else 根据 can_continue 输出结论。
|
||
# - 可以继续:输出“所有要求均已达到,可以进入下一课。”
|
||
# - 不可继续:输出“当前仍有要求未达到,请查看具体建议。”
|
||
|
||
# 练习九:使用一组 if...elif...else 给出一条具体建议。
|
||
# 建议按以下优先顺序判断:
|
||
# 1. 成绩范围无效:提示输入 0 到 100 之间的分数;
|
||
# 2. 成绩未通过:提示复习并重新测验;
|
||
# 3. 练习未完成:提示完成课堂练习;
|
||
# 4. 学习时间不足:提示每天至少安排 1 小时;
|
||
# 5. 以上问题都不存在:提示保持节奏继续学习。
|
||
#
|
||
# 注意:这里使用 elif 是为了每次只输出当前优先级最高的一条建议。
|
||
|
||
# 练习十:使用 f-string 输出完整评估数据,至少包括:
|
||
# daily_hours、practice_finished、score、score_level 和 can_continue。
|
||
|
||
# 完成后必须使用以下六组数据分别运行:
|
||
#
|
||
# 第一组:2.5、yes、95
|
||
# 预期:优秀,可以继续。
|
||
#
|
||
# 第二组:1.5、yes、75
|
||
# 预期:合格,可以继续。
|
||
#
|
||
# 第三组:0.5、yes、75
|
||
# 预期:合格,但学习时间不足,不能继续。
|
||
#
|
||
# 第四组:2、no、80
|
||
# 预期:良好,但练习未完成,不能继续。
|
||
#
|
||
# 第五组:2、yes、50
|
||
# 预期:未通过,不能继续。
|
||
#
|
||
# 第六组:2、yes、120
|
||
# 预期:输入无效,不能继续。
|
||
|
||
|
||
# 完成后进行自查:
|
||
# 1. 每个 if、elif、else 末尾是否都有英文冒号;
|
||
# 2. 同一分支的代码是否统一缩进四个空格;
|
||
# 3. 分数范围校验是否早于成绩等级判断;
|
||
# 4. 成绩等级条件是否从高分向低分排列;
|
||
# 5. can_continue 是否组合了全部四个条件;
|
||
# 6. 六组测试数据是否分别进入了正确分支。
|