Trabalho processamento de sinais
Conforme materia
Exemplo de trabalho
Aluno: Marcelo Maurin Martins
Grupo: Sem grupo
1 – Senha Pronto Atendimento Escreva um programa que destribua senhas aos pacientes que chegam no Atendimento de Emergência de um Hospital. Deverá seguir os seguintes critérios
O hospital possui 3 filas (ortopedia, Atendimento Comum e Atendimento Prioritário) A senha será composta por 3 letras indicando a fila e 3 algarismos indicando a posição do paciente na fila (AAA-000) A senha de atendimento preferêncial irá iniciar com as letras ATP A senha de atendimento comum irá iniciar com as letras ATC A senha de atendimento para ortopedia irá iniciar com as letras ORT Antes de finalizar o programa, o mesmo deverá imprimir a lista de senhas geradas em cada fila
In [1]:
# Função para gerar senhas def gerar_senha(fila, tipo, contador): if tipo == "prioritaria": prefixo = "ATP" elif tipo == "comum": prefixo = "ATC" elif tipo == "ortopedia": prefixo = "ORT" else: raise ValueError("Tipo de fila inválido") senha = f"{prefixo}-{contador:03d}" fila.append(senha) # Filas ortopedia = [] atendimento_comum = [] atendimento_prioritario = [] # Função para imprimir senhas em uma fila def imprimir_senhas(fila, nome): print(f"Senhas na fila {nome}:") for senha in fila: print(senha) # Simulação de um estudante aprendendo Python print("Bem-vindo ao sistema de distribuição de senhas do hospital!") print("Escolha o tipo de atendimento:") print("1 - Ortopedia") print("2 - Atendimento Comum") print("3 - Atendimento Prioritário") opcao = input("Digite o número correspondente ao tipo de atendimento desejado: ") if opcao == "1": gerar_senha(ortopedia, "ortopedia", len(ortopedia)) imprimir_senhas(ortopedia, "Ortopedia") elif opcao == "2": gerar_senha(atendimento_comum, "comum", len(atendimento_comum)) imprimir_senhas(atendimento_comum, "Atendimento Comum") elif opcao == "3": gerar_senha(atendimento_prioritario, "prioritaria", len(atendimento_prioritario)) imprimir_senhas(atendimento_prioritario, "Atendimento Prioritário") else: print("Opção inválida! Por favor, escolha uma opção válida.")
Bem-vindo ao sistema de distribuição de senhas do hospital! Escolha o tipo de atendimento: 1 - Ortopedia 2 - Atendimento Comum 3 - Atendimento Prioritário Digite o número correspondente ao tipo de atendimento desejado: 1 Senhas na fila Ortopedia: ORT-000
Nota complementar
Fiz um outro programa em uma terceira linguagem aderente ao exercicio.
2 – Horário de Medicamentos Faça um programa que a equipe de enfermagem entre com as informações do paciente para lembra-los do horário da medicação com as seguintes recomendações:
Dados do Paciente – Nome Completo, Data de Nascimento e Tipo do sangue Dados da Medicação – Nome da Medicação, Classificação, e horário para aplicação A Classificação do Medicamento será – medicamento comum, Psicotrópico, Alto risco, Alto custo e Psicotrópicos Ao chegar nos horários do medicamento, um aviso deverá aparecer na tela o horário pode ser simulado mas se for usado a hora do computador ganhará mais pontos Pelo menos 2 horários distintos para alarmar
In [ ]:
import datetime import time # Função para calcular a idade a partir da data de nascimento def calcular_idade(data_nascimento): hoje = datetime.date.today() ano_nascimento = data_nascimento.year idade = hoje.year - ano_nascimento if hoje.month < data_nascimento.month or (hoje.month == data_nascimento.month and hoje.day < data_nascimento.day): idade -= 1 return idade # Função para formatar a data de nascimento def formatar_data(data): return data.strftime("%d/%m/%Y") # Função para verificar se é hora da medicação def verificar_horario_med(med_horario, hora_atual): for horario in med_horario: if hora_atual.hour == horario.hour and hora_atual.minute == horario.minute: return True return False # Dados do paciente nome = input("Digite o nome completo do paciente: ") data_nascimento = datetime.datetime.strptime(input("Digite a data de nascimento do paciente (formato: dd/mm/aaaa): "), "%d/%m/%Y") tipo_sangue = input("Digite o tipo sanguíneo do paciente: ") # Dados da medicação nome_med = input("Digite o nome da medicação: ") classificacao_med = input("Digite a classificação da medicação (comum, psicotrópico, alto risco, alto custo, psicotrópicos): ").lower() horarios = [] for i in range(2): hora = datetime.datetime.strptime(input(f"Digite o horário {i+1} para aplicação da medicação (formato: hh:mm): "), "%H:%M") horarios.append(hora.time()) # Imprimir informações do paciente e da medicação print("\n--- Informações do Paciente ---") print("Nome:", nome) print("Data de Nascimento:", formatar_data(data_nascimento)) print("Idade:", calcular_idade(data_nascimento), "anos") print("Tipo Sanguíneo:", tipo_sangue) print("\n--- Informações da Medicação ---") print("Nome da Medicação:", nome_med) print("Classificação da Medicação:", classificacao_med.capitalize()) print("Horários de Aplicação:", ", ".join(map(lambda x: x.strftime("%H:%M"), horarios))) # Variável para controlar se a mensagem já foi exibida mensagem_exibida = False # Simulação do tempo para verificar o horário da medicação print("\nSimulando o tempo para verificar o horário da medicação...") while True: hora_atual = datetime.datetime.now().time() if verificar_horario_med(horarios, hora_atual) and not mensagem_exibida: print("Hora da medicação! Não se esqueça de tomar o medicamento:", nome_med) mensagem_exibida = True elif not verificar_horario_med(horarios, hora_atual): mensagem_exibida = False # Aguardar 1 minuto antes de verificar novamente time.sleep(60)
Digite o nome completo do paciente: marcelo Digite a data de nascimento do paciente (formato: dd/mm/aaaa): 20/12/1999 Digite o tipo sanguíneo do paciente: a Digite o nome da medicação: paracetamol Digite a classificação da medicação (comum, psicotrópico, alto risco, alto custo, psicotrópicos): 12:56 Digite o horário 1 para aplicação da medicação (formato: hh:mm): 12:57 Digite o horário 2 para aplicação da medicação (formato: hh:mm): 12:58 --- Informações do Paciente --- Nome: marcelo Data de Nascimento: 20/12/1999 Idade: 24 anos Tipo Sanguíneo: a --- Informações da Medicação --- Nome da Medicação: paracetamol Classificação da Medicação: 12:56 Horários de Aplicação: 12:57, 12:58 Simulando o tempo para verificar o horário da medicação... Hora da medicação! Não se esqueça de tomar o medicamento: paracetamol
3 – Inventário de Equipamentos Biomédicos Faça um programa que tenha dois modos acessados por um menu. O primeiro módulo é de cadastro de equipamentos médicos e o segundo é de consulta dos equipamentos cadastrados. Siga as instruções:
O software deverá ter um menu principal onde o usuáriopoderá acessar as duas opções Na parte de cadastramento o usuário deverá entrar com os dados nos campos: Nome do Equipamento, TAG de identificação, e local de uso. A tag é um jeito mais fácil de identificar os equipamentos. exemplo:3° monitor multiparemetro da UTI -> UTI-MNP-0003 Porém vc pode criar a sua forma No modo de consulta deverá ter 3 formas de consulta (TAG, Tipo de equipamento e Local de uso) Ao consultar um item por uma das formas, as outras informações referente a este item taambém deverá aparecer
In [ ]:
# Função para cadastrar um novo equipamento def cadastrar_equipamento(inventario): print("\n--- Cadastro de Equipamento ---") nome = input("Digite o nome do equipamento: ") local = input("Digite o local de uso do equipamento: ") tag = input("Digite a TAG de identificação do equipamento: ") inventario.append({"Nome": nome, "Local": local, "TAG": tag}) print("Equipamento cadastrado com sucesso!") # Função para consultar equipamentos por TAG def consultar_por_tag(inventario): tag_consulta = input("Digite a TAG do equipamento que deseja consultar: ") encontrado = False for equipamento in inventario: if equipamento["TAG"] == tag_consulta: print("\n--- Informações do Equipamento ---") print("Nome:", equipamento["Nome"]) print("Local de Uso:", equipamento["Local"]) print("TAG:", equipamento["TAG"]) encontrado = True break if not encontrado: print("Equipamento não encontrado!") # Função para consultar equipamentos por Tipo def consultar_por_tipo(inventario): tipo_consulta = input("Digite o tipo de equipamento que deseja consultar: ") encontrado = False for equipamento in inventario: if tipo_consulta in equipamento["TAG"]: print("\n--- Informações do Equipamento ---") print("Nome:", equipamento["Nome"]) print("Local de Uso:", equipamento["Local"]) print("TAG:", equipamento["TAG"]) encontrado = True if not encontrado: print("Nenhum equipamento desse tipo encontrado!") # Função para consultar equipamentos por Local def consultar_por_local(inventario): local_consulta = input("Digite o local de uso que deseja consultar: ") encontrado = False for equipamento in inventario: if equipamento["Local"].lower() == local_consulta.lower(): print("\n--- Informações do Equipamento ---") print("Nome:", equipamento["Nome"]) print("Local de Uso:", equipamento["Local"]) print("TAG:", equipamento["TAG"]) encontrado = True if not encontrado: print("Nenhum equipamento encontrado nesse local!") # Função para exibir o menu principal def exibir_menu(): print("\n--- Menu Principal ---") print("1. Cadastrar Equipamento") print("2. Consultar Equipamentos") print("3. Sair") # Lista para armazenar os equipamentos cadastrados inventario = [] # Loop principal do programa while True: exibir_menu() opcao = input("Escolha uma opção: ") if opcao == "1": cadastrar_equipamento(inventario) elif opcao == "2": print("\n--- Opções de Consulta ---") print("1. Por TAG") print("2. Por Tipo de Equipamento") print("3. Por Local de Uso") consulta_opcao = input("Escolha uma opção de consulta: ") if consulta_opcao == "1": consultar_por_tag(inventario) elif consulta_opcao == "2": consultar_por_tipo(inventario) elif consulta_opcao == "3": consultar_por_local(inventario) else: print("Opção de consulta inválida!") elif opcao == "3": print("Saindo do programa...") break else: print("Opção inválida! Por favor, escolha uma opção válida.")
In [ ]: