Ir ao conteúdo
  • Cadastre-se

Roberto Montoni

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

posts postados por Roberto Montoni

  1. 1 hora atrás, Luís Roberto C. da Silva disse:

    @Roberto Montoni Para comparar as idades é só fazer um laço, contando o número de registros e usar a condicional if. Se tiver 65 anos ou mais, é paciente de risco.

    Para salvar o programa em formato binário basta compilar.

    Obrigado vou tentar fazer isso!

    1 hora atrás, Luís Roberto C. da Silva disse:

    @Roberto Montoni Para comparar as idades é só fazer um laço, contando o número de registros e usar a condicional if. Se tiver 65 anos ou mais, é paciente de risco.

    Para salvar o programa em formato binário basta compilar.

    Poderia me dar um norte onde no meu código faço isso? Olha o código que tenho!

    #include <stdio.h>
    #include <stdlib.h>
    //[email protected]//Roberto Montoni
    int main(int argc, char *argv[]) {
     // Declarar variáveis
    int idade;
    int diferenca_tempo;
    
     // Pedir ao usuário para escrever sua idade
     printf("Digite sua idade: ");
     scanf("%d", &idade);
     // Comparar com a idade mínima
    if (idade >= 65) {
     diferenca_tempo = idade - 65;
     printf("Paciente faz parte do grupo de risco!\n");
     printf("Precisa ter certos cuidados com o Paciente",
     diferenca_tempo);
     } else {
     diferenca_tempo = 65 - idade;
     printf("Paciente nao faz parte do Grupo de Risco!\n",
     diferenca_tempo);
     }
    return 0;
    }

     

  2. #include<stdio.h>
    #include<stdlib.h>
    #include<windows.h>
    #include<locale.h>
    #include<string.h>
    #include<conio.h>
    
    typedef struct Paciente{
        char nome[50];
        char cpf[50];
        char sexo[20];
        char comorbidades[500];
        int telefone;
        int idade;
        int codi;
        int urg;
        struct Paciente *prox;
    
    }paciente;
    
    typedef struct Listas{
        int qnt;
        struct Paciente *head;
    }listas;
    
    typedef struct Arvore{
        struct Paciente *No;
        struct Arvore *Esq;
        struct Arvore *Dir;
    }arvore;
    
    int pacientes = 0;
    
    void adicionar(arvore **Arv, paciente *tmp);
    
    listas* inicializarLista(){
        listas *tmp = (listas*)malloc(sizeof(listas));
        tmp->qnt = 0;
        tmp->head = NULL;
        return tmp;
    }
    //Cadastra os Eletronicos no estoque
    void cadastrar_paciente(listas *tmp, arvore *Arv){
          int op_cadastro_paciente = 0;
    
        printf("\t\t-------------------------CADASTRO-------------------------\n\n");
        do{
            system("cls");
            paciente *aux = (paciente *)malloc(sizeof(paciente));
            printf("\tInforme o nome do paciente\n");
            printf("\tNome: ");
            fflush(stdin);
            gets(aux->nome);
            fflush(stdin);
    
            printf("\n\tInforme o CPF do paciente\n");
            printf("\tCPF: ");
            scanf("%s", aux->cpf);
    
            printf("\n\tInforme o telefone do paciente\n");
            printf("\tTelefone: ");
            scanf("%d", &aux->telefone);
    
            printf("\n\tInforme a idade do paciente\n");
            printf("\tIdade: ");
            scanf("%d", &aux->idade);
    
    
            printf("\n\tInforme o sexo do paciente\n");
            printf("\tSexo [M]-[F]: ");
            fflush(stdin);
            scanf("%s", aux->sexo);
            fflush(stdin);
    
            printf("\n\tInforme as comorbidades do paciente\n");
            printf("\tComorbidades: ");
            fflush(stdin);
            gets(aux->comorbidades);
            fflush(stdin);
    
    
            printf("\n\tInforme a urgencia do paciente [de 1 (Mais urgente) a 20 (Menos urgente)]\n");
            printf("\tUrgencia: ");
            scanf("%d", &aux->urg);
            printf("\n\n");
    
    
            printf("\n\tInforme o código do paciente\n");
            printf("\tCódigo: ");
            scanf("%d", &aux->codi);
            printf("\n\n");
    
            //Salva os dados dos Pacientes em TXT
            FILE *paci;
            paci = fopen("Dados_Pacientes.txt", "a+");
            fprintf(paci,"Nome: %s -> CPF: %s -> Sexo: %s -> Idade: %d -> Telefone: %d -> Código: %d\n", aux->nome, aux->cpf, aux->sexo, aux->idade, aux->telefone, aux->codi);
              fclose(paci);
    
              FILE *sint;
              sint = fopen("Comorbidades.txt", "a+");
              fprintf(sint,"Nome: %s\nIdade: %d\nComorbidades: %s\n", aux->nome,aux->idade, aux->comorbidades);
              fprintf(sint,"----------------------------------------------------------------\n");
            fclose(sint);
    
            adicionar(&Arv, aux);
    
            aux->prox = tmp->head;
            tmp->head = aux;
            tmp->qnt++;
    
    
            printf("1-Novo cadastro\n2-Voltar ao Menu\n");
            printf("Opção: ");
            scanf("%d", &op_cadastro_paciente);
        }while(op_cadastro_paciente != 2);
    }
    
    //Faz a listagem dos pacientes
    void listar_pacientes(listas *tmp){
        int op = 0;
        printf("\t----------------------PACIENTES----------------------\n");
    
        paciente *aux;
        printf("\n\n");
        printf("---------------------------------------------------------------------------------------------------------\n");
        for(aux = tmp->head; aux != NULL; aux = aux->prox){
            printf("Nome: %s\nCPF: %s\nSexo: %s\nIdade: %d\nTelefone: %d\nComorbidades: %s\nCódigo: %d\n", aux->nome, aux->cpf, aux->sexo, aux->idade, aux->telefone,aux->comorbidades, aux->codi);
            printf("---------------------------------------------------------------------------------------------------------\n\n\n");
        }
    
    
        printf("---------------------------------------------------------------------------------------------------------\n\n\n");
        printf("\t\t\tExistem %d pacientes cadastrados\n", tmp->qnt);
        free(aux);
        printf("\n\n");
        printf("1-Voltar ao menu\n2-Encerrar o programa ");
        scanf("%d", &op);
        if(op == 2){
            exit(0);
        }
    }
    
    void adicionar(arvore **Arv, paciente *pac){
        arvore *temp = NULL;
        if (*Arv == NULL){
            temp = (arvore*)malloc(sizeof(arvore));
            temp->Esq = NULL;
            temp->Dir = NULL;
            temp->No = pac;
            *Arv = temp;
        }
        else {
            if (pac->urg < ((*Arv)->No->urg)){
                adicionar(&((*Arv)->Esq), pac);
            }
            else{
                adicionar(&((*Arv)->Dir), pac);
            }
        }
    }
    
    // Em Ordem (Do menor pro maior)
    void Mostrar(arvore *Arv){
        if(Arv != NULL){
            Mostrar(Arv->Esq);
            printf("Nome: %s\nCPF: %s\nSexo: %s\nIdade: %d\nTelefone: %d\nComorbidades: %s\nUrgencia: %d\nCódigo: %d\n", Arv->No->nome, Arv->No->cpf, Arv->No->sexo, Arv->No->idade, Arv->No->telefone, Arv->No->comorbidades, Arv->No->urg, Arv->No->codi);
            Mostrar(Arv->Dir);
        }
    }
    
    
    //Alterando os dados dos pacientes
    void alterar_paciente(listas* lista_escolhida){
         char nome_substituto[50];
         char cpf_substituto[50];
         int codigo, idade_substituto, telefone_substituto;
         paciente* atual = lista_escolhida->head;
         system("cls");
    
         printf("\tCódigo do paciente a ser alterado: ");
         scanf("%d", &codigo);
    
         //Verificando se o código é válido
         while(atual != NULL && atual->codi != codigo){
            atual = atual->prox;
         }
    
    
         if(atual!=NULL){
            printf("\n\tNovo nome: ");
            scanf("%s", nome_substituto);
            strcpy(atual->nome,nome_substituto);//Faz a mudança de nome
    
            printf("\n\tNova idade: ");
            scanf("%d", &idade_substituto);
            atual->idade = idade_substituto;//Altera a idade
    
            printf("\n\tNovo CPF: ");
            scanf("%s", cpf_substituto);
            strcpy(atual->cpf,cpf_substituto);//Altera o CPF
    
            printf("\n\tNovo telefone: ");
            scanf("%d", &telefone_substituto);
            atual->telefone = telefone_substituto;//Altera o Telefone
    
    
            printf("\n\tDados alterados com sucesso.\n\tVoltando ao menu...");
    
         }else{
            printf("\n\tpaciente não encontrado\n\tVoltando ao menu...");
         }
         Sleep(3000);
    
    }
    
    listas* excluir_paciente(listas* lista_escolhida){
    
        //Ponteiro para saber o elemento anterior ao elemento atual da lista.
        paciente *anterior = NULL;
        //Ponteiro para percorrer a lista sem perder o primeiro elemento da lista.
        paciente *atual = lista_escolhida->head;
        int codigo;
        system("cls");
        //Requisitando e lendo o código do paciente a ser excluído.
        printf("\n\nCódigo do paciente a ser excluído: ");
        scanf("%d", &codigo);
    
        //Procurando o paciente na lista.
        while(atual != NULL && atual->codi != codigo){
           anterior = atual;
           atual = atual->prox;
        }
    
        //Mensagem caso o paciente não seja encontrado.
        if(atual == NULL){
           printf("\n  Paciente não encontrado.");
           Sleep(1500);
           return lista_escolhida;
        }
        //Excluindo o primeiro paciente da lista.
        if(anterior == NULL){
           printf("\n  Paciente excluído com sucesso.");
           lista_escolhida->head = atual->prox;
           Sleep(1500);
           return lista_escolhida;
        //Excluindo um paciente do meio da lista.
        }else{
           printf("\n  Paciente excluído com sucesso.");
           anterior->prox = atual->prox;
           Sleep(1500);
           return lista_escolhida;
        }
        lista_escolhida->qnt--;
        //Desalocando o espaço da memória.
        free(atual);
        return lista_escolhida;
    }
    
    
    //Faz a animação do "Entrando..."
    void entrando(){
        int carregando;
        for(carregando=1;carregando<=3;carregando++){
            printf("\n\n\n\t\t\tCarregando.");
               Sleep(100);
            system("cls");
            printf("\n\n\n\t\t\tCarregando..");
            Sleep(100);
            system("cls");
            printf("\n\n\n\t\t\tCarregando....");
            Sleep(100);
            system("cls");
        }
    }
    
    //Menu principal
    void menu(){
    
        int op_menu;
        listas *lista_paciente = inicializarLista();
        arvore *Arv = NULL;
    
        do{
            printf("\t\t--------------------HOSPITAL UNIP COVID-------------------------\n\n");
            printf("\n\n");
            printf("\tEscolha a opcao desejada\n");
            printf("\t[1] - Adicionar paciente\n");
            printf("\t[2] - Alterar dados do paciente\n");
            printf("\t[3] - Exibir pacientes [Por chegada]\n");
            printf("\t[4] - Exibir pacientes [Por urgencia]\n");
            printf("\t[5] - Excluir pacientes\n");
            printf("\t[0] - Encerrar o programa\n");
            printf("\n\tOpcao: ");
            scanf("%d", &op_menu);
            switch(op_menu){
                case 1:
                    system("cls");
                    cadastrar_paciente(lista_paciente, Arv);
                    break;
                case 2:
                    system("cls");
                    alterar_paciente(lista_paciente);
                    break;
                case 3:
                    system("cls");
                    listar_pacientes(lista_paciente);
                    break;
                case 4:
                    system("cls");
                    printf("-- Pacientes por ordem de urgencia --");
                    Mostrar(Arv);
                    system("pause>null");
                    break;
                case 5:
                    system("cls");
                    printf("\tQual paciente deseja excluir?\n");
                    lista_paciente = excluir_paciente(lista_paciente);
                    break;
                case 0:
                    exit(0);
                    break;
                default:
                    printf("\n\n\n\n");
                    printf("Opcao invalida\n");
                    Sleep(1500);
                    printf("\n\n\n\n");
            }
            system("cls");
        }while(op_menu != 0);
    }
    
    
    //Função principal
    int main(){
    
         while(1)
        {
    
            char string[5];
            char enter[2];
    
            printf ("\n Digite a senha : ");
            string[0] = getch();
            printf ("*");
            string[1] = getch();
            printf ("*");
            string[2] = getch();
            printf ("*");
            string[3] = getch();
            printf ("*");
            string[4] = getch();
            printf ("*");
    
            enter[0] = getch();
            if(enter[0] == 13)
            {
                if((string[0] == 'C') && (string[1] == 'o') && (string[2] == 'v') && (string[3] == 'i') && (string[4] == 'd')) // senha correta é "Covid".
                {
    
    
                    system("color F1");
                    system("cls"); // limpa a tela.
                    printf ("\n\n\t\tAcesso permitido!\n\n\t\tParabens!\n\t\tTecle Enter para Acessar o Sistema!\n\n\n\n\n\n\n");
                    getchar(); // quando precionar o "ENTER" continua o programa.
                    system("cls"); // limpa a tela.
                }
                else
                {
                    system("color F1");
                    system("cls"); // limpa a tela.
                    printf ("\n\n\t\tAcesso negado!\n\n\t\tVoce não tem permissao para acesso! Tecle Enter Para Tentar Novamente!\n\n\n\n\n\n\n\n\n\n\n");
                    system("pause>null");
                    system("cls"); // limpa a tela.
    
                    return main();
                }
    
    
        system("color F1");//Muda a cor do programa
        setlocale(LC_ALL,"Portuguese");
        entrando();//Chama a função responsável por realizar a animação
        menu();//Chama o menu principal
        system("pause>null");
    }}}

    Bom dia a todos, estou tendo um problema com meu projeto, depois que escrevi o código vi que faltou algumas coisas pedidas, como comparar a idade do paciente com mais de 65 anos e informar que ele é paciente de risco e Fazer com que o programa seja salvo em formato binário! Alguém pode me dar uma ajuda????

    • Obrigado 1

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!