Programa de pronto socorro

Disponível somente no TrabalhosFeitos
  • Páginas : 14 (3476 palavras )
  • Download(s) : 0
  • Publicado : 18 de março de 2013
Ler documento completo
Amostra do texto
1) Para o funcionamento adequado do programa, primeiro é preciso cadastrar pelo menos uma especialidade para depois cadastrar os pacientes. 2) A função que atende o paciente só é acionada quando a terceira opção do menu é escolhida. Na hora de listar os pacientes por especialidade, o usuário confirma se deseja ou não atender o primeiro paciente da lista. 3) As estatísticas só são imprimidasdepois que pelo menos um paciente tiver sido cadastrado. /********************************************************************** Universidade de Brasília Instituto de Ciências Exatas Departamento de Ciência da Computação Estrutura de Dados - B - 01/2006 Aluna: Paula Gripp de Melo Matricula: 05/22431 Trabalho: 01 Descrição: Programa de automatização do sistema de atendimento de um Pronto Socorro.**********************************************************************/ # define TESTE # include # include /* Estrutura que armazena os dados do paciente */ typedef struct paciente{ char nome[50], plano[50]; long cpf; int estado, pref, espec, prior; char atend_pref; struct paciente *p_ant_pac; struct paciente *p_prox_pac; }paciente; /* Estrutura que armazena as especialidades */ typedef structespecial{ char nome[50]; int pac_at_esp; struct especial *p_prox_esp; struct paciente *p_pac_esp; }especial; /* Variáveis globais que contam o número de pacientes atendidos */ int pac_at=0, pac_at_reg=0, pac_at_ruim=0, pac_at_pes=0; int pac_at_id=0, pac_at_ges=0, pac_at_def=0, pac_espera_esp=0, pac_espera=0; /* Protótipos das funções */ int menu(); paciente *cadastraPac(especial *p_ini_esp); especial*cadastraEsp(); void listaPac(especial *p_ini_esp); void listaEsp(especial *p_inic_esp); especial *listaPacEsp(especial *p_ini_esp);

void estatisticas(especial *p_esp); void OpcaoInv(); char Confirma(); void controle(); int EspValida(int num, especial *p_inic_esp); void tiraBarraN(char *p); int Prioridade(paciente *p_pac); int AtendePac(especial *p_esp); void Contador(int var); voidCalculaPacEsperaEsp(int num, especial *p_ini_esp); void teste(especial *p_esp); void gravaPac(paciente *p_pac, especial *p_ini_esp); void gravaEsp(especial *p_cad, especial **p_ini);

/*...............................PRIMEIRA CAMADA................................ ............................interface com o usuário...........................*//******************************************************************************* Função: menu Descrição: Função que imprime o menu de opções para o usuário Argumentos: Não possui argumentos

Retorna: A opção escolhida pelo usuário(int opcao) *******************************************************************************/ int menu(){ int opcao; system("cls"); printf("****************************************************************\n"); printf("* *\n");printf("* PRONTO SOCORRO *\n"); printf("* *\n"); printf("****************************************************************\n\n\n\n"); printf("1. Cadastrar paciente\n\n"); printf("2. Listar todos os pacientes\n\n"); printf("3. Listar os pacientes de uma especialidade\n\n"); printf("4. Listar especialidades\n\n"); printf("5. Cadastrar especialidade\n\n"); printf("6. Imprimir estatisticas\n\n"); printf("0.Sair\n\n\n\n"); scanf("%d", &opcao); return(opcao); } /******************************************************************************* Função: cadastraPac Descrição: Função que recebe os dados para o cadastro do paciente

Argumentos:

Ponteiro p/ a 1ª posição da lista de especialidades(especial *p_ini_esp)

Retorna: O ponteiro alocado dinamicamente que aponta para a struct paciente (p_pac)*******************************************************************************/ paciente *cadastraPac(especial *p_ini_esp){ paciente *p_pac; /* Aloca dinamicamente espaço p/ um ponteiro do tipo paciente */ p_pac = (paciente*)malloc(sizeof(paciente)); /* Atribui NULL ao ponteiro que aponta para a próxima estrutura */ p_pac->p_prox_pac = NULL; /* Recebe os dados do usuário */ system("cls");...
tracking img