编写程序,模拟擦窗机器人清洁,输入窗户脏污程度,若脏污程度大于80%,输出开启强力清洁模式,否则输出普通清洁模式。

28 阅读3分钟

我将按照代码生成场景准则为你开发擦窗机器人清洁模式模拟程序,确保模块化、易用性与可扩展性。

一、完整程序代码(Python 3.8+)

""" 模拟擦窗机器人清洁模式决策程序 功能:输入脏污程度(%),>80%开启强力模式,否则普通模式 核心逻辑:模块化拆分输入、验证、判断、交互流程 """

def get_user_input(): """获取用户输入的脏污程度字符串""" prompt = "请输入窗户脏污程度(0-100的整数/小数,单位%):" return input(prompt).strip()

def validate_dirt_level(input_str): """ 验证并转换脏污程度输入 返回:有效数值(float)或 None(无效时) """ try: dirt_level = float(input_str) if 0 <= dirt_level <= 100: # 范围校验 return dirt_level else: print("❌ 错误:脏污程度需在0-100之间!") return None except ValueError: print("❌ 错误:输入必须是数字(如75或92.5)!") return None

def determine_cleaning_mode(dirt_level): """根据脏污程度判断清洁模式""" return "强力清洁模式" if dirt_level > 80 else "普通清洁模式"

def main(): """主流程:协调输入→验证→判断→输出""" print("=== 擦窗机器人清洁模式模拟程序 ===") while True: user_input = get_user_input() if user_input.lower() in ["q", "quit"]: # 退出机制 print("感谢使用,再见!") break

    valid_dirt = validate_dirt_level(user_input)
    if valid_dirt is None:
        continue  # 无效输入则重新提示
    
    mode = determine_cleaning_mode(valid_dirt)
    print(f"\n📊 脏污程度:{valid_dirt}% → 开启【{mode}】\n")

if name == "main": main()

二、README文件

擦窗机器人清洁模式模拟程序README

简介

模拟智能擦窗机器人的环境感知与决策逻辑:通过输入窗户脏污程度(%),自动判断清洁模式(强力/普通),还原《智能机器人导论》中“传感器数据处理→决策输出”的核心流程。

安装依赖

无需第三方库,Python 3.8+ 标准库即可运行。

使用方法

  1. 保存代码为 window_cleaner.py
  2. 终端运行:python window_cleaner.py
  3. 输入脏污程度(如7592.5),按回车查看结果
  4. 输入qquit退出程序

功能特点

  • 输入验证:拦截非数字、超范围(<0或>100)错误
  • 模块化设计:拆分5个单一职责函数
  • 友好交互:实时错误提示+清晰结果输出

目录结构

  • window_cleaner.py:主程序文件

三、使用说明

  1. 环境准备:确认安装Python 3.8+(终端输 "python --version"验证)。
  2. 启动程序:打开终端→进入代码目录→输 "python window_cleaner.py"。
  3. 输入规则:按提示输入0-100的数字(支持小数,如 "85.3"),错误会重新提示。
  4. 结果示例:
    • 输入 "92"→输出 "脏污程度:92.0% → 开启【强力清洁模式】"
    • 输入 "60"→输出 "脏污程度:60.0% → 开启【普通清洁模式】"
  5. 退出方式:输入 "q"或 "quit"回车结束。

四、核心知识点卡片

知识点 说明 函数模块化 将输入、验证、判断拆分为独立函数(如 "validate_dirt_level"),提升复用性 输入验证与异常处理 用 "try-except"捕数字转换错, "if"判范围,处理非数字/超边界场景 条件决策逻辑 用三元表达式 "A if 条件 else B"实现脏污程度→模式的映射 主程序入口规范 用 "if name == "main""确保模块导入不执行主逻辑 用户交互设计 循环输入+ "q"退出机制、实时错误反馈,模拟真实机器人交互 数据类型转换 将字符串转为浮点数( "float(input_str)"),支持小数脏污程度输入

代码运行说明

  1. 复制代码保存为 "window_cleaner.py";
  2. 终端执行 "python window_cleaner.py";
  3. 按提示输入即可测试(如输入 "85"看强力模式,输入 "70"看普通模式)。

如需扩展(如添加“超脏预警”模式),只需修改 "determine_cleaning_mode"函数的判断逻辑。 关注我,有更多实用程序等着你!