Razvancb Posted May 5, 2017 at 02:00 PM Report Share #604012 Posted May 5, 2017 at 02:00 PM Olá a todos, estou num pequeno dilema para um projeto que tenho que realizar. Tenho que criar um algoritmo para escolher uma "pessoa" de acordo com o algoritmo de prioridade que eu fizer. O algoritmo consiste em: "Cada Médico, quando livre, chama um Utente, segundo o sistema de prioridades indicado: urgência Roxo tem a prioridade sobre todas as outras que, por sua vez seguem uma prioridade circular de urgência: Vermelho > Amarelo > Vermelho > Amarelo > Vermelho > Verde (voltando de novo ao Vermelho … ), retira este Utente da respectiva fila e inicia o episódio de Urgência." Eu não quero código nenhum, apenas quero uma indicação de como começar a fazer este algoritmo. Muito obrigado desde já. Link to comment Share on other sites More sharing options...
apocsantos Posted May 5, 2017 at 04:29 PM Report Share #604014 Posted May 5, 2017 at 04:29 PM Boa tarde, Bem, se não estiveres a lidar nem com especialidades, nem com mais informação proveniente de triagem manchester, além da que tens, eu pessoalmente optaria por atribuir valores numéricos às prioridades, tipo: roxo -> 0 vermelho -> 1 amarelo -> 2 verde -> 3 como a "cor" do utente pode mudar a qualquer instante, provavelmente usaria um "evento" que despoleta-se uma nova ordenação, possivelmente recorrendo a um algoritmo tipo o quicksort. Sempre que um médico fica livre, é despoletada uma nova ordenação dos utentes, e quando o médico decide que utente vai atender de acordo com a ordem de prioridades, é refeita a ordenação, para os restantes o o que vai ser atendido gera um "episódio". Se tivesses a lidar com outros dados provenientes da triagem, aí sim, iria para algum algoritmo mais eficiente, que contempla-se mais variáveis. Cordiais cumprimentos, Apocsantos "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito" Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now