琴Q特小腊稽 2025-11-24 20:30 采纳率: 0%
浏览 6

请帮写一个医院排号程序,简单实用,稳定就行!

有偿,请帮写一个医院排号程序,简单实用,稳定就行!请帮写一个医院排号程序,简单实用,稳定就行!

  • 写回答

3条回答 默认 最新

  • 檀越@新空间 2025-11-24 20:32
    关注

    晚上好🌙🌙🌙
    本答案参考通义千问

    当然可以!下面是一个简单实用、稳定的医院排号程序的实现方案,使用 Python 语言编写,适合用于小型诊所或医院的排队系统。该程序具备以下功能:

    • 挂号编号自动生成
    • 显示当前队列
    • 叫号功能
    • 退出程序

    ✅ 程序功能概述

    1. 用户输入科室名称
    2. 系统生成一个唯一的挂号编号(如:001, 002, ...)
    3. 显示当前排队列表
    4. 可以叫号(即从队列中移除当前号码)
    5. 支持退出程序

    🧠 技术选型

    • 编程语言:Python
    • 数据结构:列表(用于保存排队信息)
    • 输入输出:控制台交互

    🔧 实现步骤

    1. 初始化数据结构

    queue = []  # 存储排队信息的列表
    

    2. 挂号函数

    def register_patient(department):
        patient_id = len(queue) + 1
        queue.append({"id": f"{patient_id:03d}", "department": department})
        print(f"【{department}科】患者编号 {patient_id:03d} 已挂号!")
    

    3. 显示当前队列

    def show_queue():
        if not queue:
            print("目前没有患者在排队。")
        else:
            print("当前排队信息如下:")
            for idx, patient in enumerate(queue):
                print(f"{idx+1}. 科室:{patient['department']} | 编号:{patient['id']}")
    

    4. 叫号函数

    def call_next_patient():
        if not queue:
            print("目前没有患者可叫号。")
        else:
            next_patient = queue.pop(0)
            print(f"请 {next_patient['id']} 号患者到 {next_patient['department']} 科就诊!")
    

    5. 主菜单循环

    def main():
        while True:
            print("\n=== 医院排号系统 ===")
            print("1. 挂号")
            print("2. 查看队列")
            print("3. 叫号")
            print("4. 退出")
            choice = input("请选择操作(1-4):")
    
            if choice == '1':
                dept = input("请输入科室名称(如:内科、外科等):")
                register_patient(dept)
            elif choice == '2':
                show_queue()
            elif choice == '3':
                call_next_patient()
            elif choice == '4':
                print("程序已退出。")
                break
            else:
                print("无效选项,请重新选择!")
    
    if __name__ == "__main__":
        main()
    

    📦 完整代码如下:

    queue = []
    
    def register_patient(department):
        patient_id = len(queue) + 1
        queue.append({"id": f"{patient_id:03d}", "department": department})
        print(f"【{department}科】患者编号 {patient_id:03d} 已挂号!")
    
    def show_queue():
        if not queue:
            print("目前没有患者在排队。")
        else:
            print("当前排队信息如下:")
            for idx, patient in enumerate(queue):
                print(f"{idx+1}. 科室:{patient['department']} | 编号:{patient['id']}")
    
    def call_next_patient():
        if not queue:
            print("目前没有患者可叫号。")
        else:
            next_patient = queue.pop(0)
            print(f"请 {next_patient['id']} 号患者到 {next_patient['department']} 科就诊!")
    
    def main():
        while True:
            print("\n=== 医院排号系统 ===")
            print("1. 挂号")
            print("2. 查看队列")
            print("3. 叫号")
            print("4. 退出")
            choice = input("请选择操作(1-4):")
    
            if choice == '1':
                dept = input("请输入科室名称(如:内科、外科等):")
                register_patient(dept)
            elif choice == '2':
                show_queue()
            elif choice == '3':
                call_next_patient()
            elif choice == '4':
                print("程序已退出。")
                break
            else:
                print("无效选项,请重新选择!")
    
    if __name__ == "__main__":
        main()
    

    ✅ 优点说明

    • 简单易用:无需复杂配置,直接运行即可。
    • 稳定可靠:基于控制台交互,无网络依赖。
    • 可扩展性强:可轻松添加数据库支持、多线程、GUI界面等。

    🛠 后续优化建议(可选)

    | 功能 | 说明 | |------|------| | 数据持久化 | 使用文件或数据库保存队列信息 | | 多科室支持 | 增加科室分类管理 | | GUI界面 | 使用Tkinter等库开发图形界面 | | 多用户支持 | 添加登录验证机制 |


    如果你有其他需求(如增加数据库、Web版、移动端等),我也可以继续帮你完善!需要的话可以告诉我。

    评论

报告相同问题?

问题事件

  • 创建了问题 11月24日