编写一个程序实现就医管理。在病人就医过程中,主要发生三件事: ⑴预检,分科室,挂号。 ⑵病人到达诊室,将病历本交给护士,排到等待队列中候诊。 ⑶护士从等待队列中取出一位病人的病历,该病人进入诊室就诊。 要求程序采用菜单方式,其选项及功能说明如下: ⑴挂号------预检,分科室,生成就诊号。 ⑵排队------输入病人的就诊号,加入到病人排队队列中。 ⑶就诊-------病人排队队列中最前面的病人就诊,并将其从队列中删除。 ⑷查看排队------从队首到队尾列出所有的排队病人的病历号。 ⑸下班---------退出运行。
时间: 2023-08-15 14:13:23 浏览: 40
以下是基于Python语言实现的就医管理程序:
```python
# 定义病人类
class Patient:
def __init__(self, name, gender, age, department, registration_number):
self.name = name
self.gender = gender
self.age = age
self.department = department
self.registration_number = registration_number
# 定义就医管理类
class MedicalManagement:
def __init__(self):
self.patients = []
self.waiting_queue = []
# 预检、分科室、生成就诊号
def registration(self):
name = input("请输入病人姓名:")
gender = input("请输入病人性别:")
age = input("请输入病人年龄:")
department = input("请输入病人所需科室:")
registration_number = len(self.patients) + 1
patient = Patient(name, gender, age, department, registration_number)
self.patients.append(patient)
print("挂号成功!病人就诊号为:", registration_number)
# 排队
def queue_up(self):
registration_number = int(input("请输入病人就诊号:"))
for patient in self.patients:
if patient.registration_number == registration_number:
self.waiting_queue.append(patient)
print("排队成功!")
return
print("该就诊号不存在!")
# 就诊
def diagnose(self):
if len(self.waiting_queue) == 0:
print("当前没有病人排队等候!")
return
patient = self.waiting_queue.pop(0)
print("请病人", patient.name, "进入诊室就诊!")
# 查看排队
def view_queue(self):
if len(self.waiting_queue) == 0:
print("当前没有病人排队等候!")
return
print("当前排队病人的病历号如下:")
for patient in self.waiting_queue:
print(patient.registration_number)
# 主程序
if __name__ == "__main__":
mm = MedicalManagement()
while True:
print("请选择操作:")
print("1. 挂号")
print("2. 排队")
print("3. 就诊")
print("4. 查看排队")
print("5. 下班")
choice = int(input())
if choice == 1:
mm.registration()
elif choice == 2:
mm.queue_up()
elif choice == 3:
mm.diagnose()
elif choice == 4:
mm.view_queue()
elif choice == 5:
break
else:
print("无效操作,请重新选择!")
```
该程序实现了就医管理的基本功能,包括挂号、排队、就诊和查看排队。用户可以根据菜单选择需要执行的操作。