nanynhamj 0 Denunciar post Postado Setembro 21, 2010 Olá! Estou tentando resolver esse exercício mas não estou conseguindo. Alguém pode me ajudar? Construa um programa, utilizando a Classe Fila , que simule o atendimento em uma Clínica. O atendimento é realizado através de senha retirada na entrada da Clínica. As senhas podem ser de (A) - Atendimento Normal, (P) - Atendimento Preferencial, e ® - Entrega de resultados. Para cada tipo de atendimento é gerado uma senha com um número seqüencial, iniciando de 1. O programa deverá permitir a chamada de cada fila. Clique aqui e veja um exemplo de implementação desta fila. Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Setembro 22, 2010 3 filas então: * (A) * (P) * (.R) Fila = FIFO (Primeiro a chegar, primeiro a sair); Oq você não entendeu na implementação? []s Compartilhar este post Link para o post Compartilhar em outros sites
nanynhamj 0 Denunciar post Postado Setembro 22, 2010 O programa principal deve conter um MENU. A dúvida é na lógica a ser usada para que nas opções de 1 a 3 criar as senhas A1, P1 e R1/ A2, P2 e R2 e depois de escolhida a opção chamar as senhas que foram criadas nas opções de 4 a 6. class Node { public: int info; Node *prox; Node() { prox = 0; } Node(int _info, Node* _prox = 0) { info = _info; prox = _prox; } }; class Fila { private: Node *inicio, *final; public: Fila() { inicio = final = 0; } void limpar(); bool estaVazia(); void colocar(int); int retirar(); int consultar(); int tamanhoFila(); }; bool Fila::estaVazia() { return(inicio==0); } void Fila::colocar(int info) { if (estaVazia()) { inicio = final = new Node(info); } else { final->prox = new Node(info); final = final->prox; } } int Fila::retirar(){ if (!estaVazia()) { int info = inicio->info; Node* tmp = inicio; inicio = inicio->prox; delete tmp; return(info); } else { throw("Fila vazia!!"); } } int Fila::consultar() { return(inicio->info); } void Fila::limpar() { while(inicio != 0) { Node* tmp = inicio; inicio = inicio->prox; delete tmp; } final = 0; } int Fila::tamanhoFila() { int tam_fila = 0; if (inicio != 0) { Node *p; for (p = inicio; p!= 0; p = p->prox){ tam_fila++; } return (tam_fila); } else { throw("Erro: Fila vazia!!"); } } #include<iostream> #include "Fila.h" main(){ int opcao; do{ cout<<" *MENU* "; cout<<"(1) Criar Fila de Atendimento"; cout<<"(2) Criar Fila Preferencial"; cout<<"(3) Criar Fila Resultados"; cout<<"(4) Chamar Senha de Atendimento"; cout<<"(5) Chamar Senha de Preferencial"; cout<<"(6) Chamar Senha de Resulatdos"; cout<<"(7) Sair"; cout<<"Digite a opcao:"; cin>>opcao; } while(opcao!= 7){ switch(opcao){ case 1: cout<<" Senha Atentimento"; break; case 2: cout<<"Senha Preferencial"; break; case 3: cout<<"Senha Resultados"; break; case 4: cout<<"Chamar senha:"; break; case 5: cout<<"Chamar senha:"; case 6: cout<<"Chamar senha:"; default: cout << "\n...Opcao Invalida " << endl; system ("pause"); break; } } system ("pause"); } Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Setembro 23, 2010 Mano não entendi sua dúvida.. você não sabe criar a fila?? Detalhe que fica + facil poder te ajudar. []s Compartilhar este post Link para o post Compartilhar em outros sites
nanynhamj 0 Denunciar post Postado Setembro 23, 2010 Eu tenho a classe fila pronta, eu não estou conseguindo é fazer o programa principal para criar e chamar as senhas a partir da classe fila, desconsidera o main para baixo, foi só uma tentativa que não deu certo, o programa deve ter um menu de opções para o usuário escolher a senha( de 1 a 3), depois (de 4 a 6) as opções para chamar as senhas criadas. Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Setembro 24, 2010 Agora crie as filas então, algo assim: Fila atendimento, preferencial, resultados; ai veja os construtores td certinho para a Fila ser iniciada e comece..você fez digamos o "mais" dificil, oq pretende agora? eu acho que ainda não entendi sua real dúvida. []s -- http://www.goulart.pro.br/progs_ex/clas01.txt Compartilhar este post Link para o post Compartilhar em outros sites