Ir ao conteúdo
  • Cadastre-se

Dexterpk

Membro Júnior
  • Posts

    6
  • Cadastrado em

  • Última visita

Tudo que Dexterpk postou

  1. Dexterpk

    C criar fila em c

    OLÁ, GOSTARIA DE ENTENDER MELHOR COMO ESSE CÓDIGO FUNCIONA, ALGUÉM PODERIA COMENTA-LO POR GENTILEZA? #include <stdio.h> #include <stdlib.h> #define LIM 5 #define FALSE 0 #define TRUE 1 #define FIM 0 #define INSERIR 1 #define RETIRAR 2 #define LISTAR 3 int obterOpcao(void) { int opcao; printf("*****************************************************\n"); printf("**********************BEM VINDO**********************\n"); printf("*****************************************************\n"); printf("MENU\n"); printf("%2d - ENCERRAR APLICAÇÃO\n", FIM); printf("%2d - ADICIONAR CLIENTE\n", INSERIR); printf("%2d - CHAMDAR DA FILA\n", RETIRAR); printf("%2d - EXIBIR LISTA DE CHAMADA\n", LISTAR); printf("Opcao: "); scanf("%d", &opcao); return opcao; } int vazia(int inicio) { return inicio == -1; } int esgotada(int inicio, int fim) { if (vazia(inicio)) return FALSE; return (fim + 1) % LIM == inicio; } int inserir(int valor, int *pInicio, int *pFim, int fila[]) { if (esgotada(*pInicio, *pFim)) return FALSE; if (vazia(*pInicio)) *pInicio = *pFim = 0; else *pFim = (*pFim + 1) % LIM; fila[*pFim] = valor; return TRUE; } int retirar(int *pValor, int *pInicio, int *pFim, int fila[]) { if (vazia(*pInicio)) return FALSE; *pValor = fila[*pInicio]; if (*pInicio == *pFim) *pInicio = -1; // lista vazia apos retirada else *pInicio = (*pInicio + 1) % LIM; return TRUE; } int listar(int inicio, int fim, int fila[]) { int i; if (vazia(inicio)) return FALSE; printf("< "); for (i = inicio; i != fim; i = (i + 1) % LIM) printf("%d ", fila[i]); printf("%d ", fila[fim]); printf("<\n"); return TRUE; } int main(void) { int inicio, fim, fila[LIM], opcao, valor; inicio = -1; // fila vazia while ((opcao = obterOpcao()) != FIM) { switch (opcao) { case INSERIR: printf("Valor a ser inserido na fila: "); scanf("%d", &valor); if (inserir(valor, &inicio, &fim, fila)) printf("Operacao concluida com sucesso\n"); else printf("Operacao frustrada - fila esgotada...\n"); break; case RETIRAR: if (retirar(&valor, &inicio, &fim , fila)) printf("Valor %d retirado da fila\n", valor); else printf("Operacao frustrada - fila vazia...\n"); break; case LISTAR: if (listar(inicio, fim, fila)) putchar('\n'); else printf("Operacao frustrada - fila vazia...\n"); break; } putchar('\n'); } return 0; }
  2. Dexterpk

    C criar fila em c

    eu apaguei kk, mas vou tentar refazer e postar aqui, já já adicionado 8 minutos depois deu certo nao... sou novo nisso, queria saber como imprimir as variaveis, mas sempre da erro
  3. Dexterpk

    C criar fila em c

    dei uma olhada mas não consegui fazer imprimir as variáveis... só rodou num código novo, com esse já estruturado não compilou
  4. Dexterpk

    C criar fila em c

    Sdd, Como consigo fazer esse código imprimir os valores das variáveis num arquivo txt? fiz o código, mas não consigo fazer a chamada pra txt. #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <conio.h> #include <ctype.h> int main(void){ setlocale(LC_ALL, "Portuguese"); int senha1=0; // posição int senha2=0; // posição //int senha3=0; char cl [40]; //cliente int op=0; //operação inicio: do{ printf("OPERAÇÃO\n"); printf("Digite [1] para saques\n"); printf("Digite [2] para depositos\n"); printf("Digite [3] para previdência\n"); scanf("%d", &op); switch (op) { case 1 : printf("SAQUES\n"); printf("\nDigite o Nome do Cliente:\n"); scanf("\n%39s", &cl); senha1++; if(senha1 <10){ printf("\n\t>>Cliete:%s\t>>Senha: SAQ0%i\n\n", cl, senha1);} else { printf("\n\t>>Cliete:%s\t>>Senha: SAQ%i\n\n", cl, senha1);} break; case 2 : printf("DEPÓSITOS\n"); printf("\nDigite o Nome do Cliente:\n"); scanf("\n%39s", &cl); senha1++; if(senha1 <10){ printf("\n\t>>Cliete:%s\t>>Senha: DEP0%i\n\n", cl, senha1);} else { printf("\n\t>>Cliete:%s\t>>Senha: DEP%i\n\n", cl, senha1);} break; case 3 : printf("PREVIDÊNCIA\n"); printf("\nDigite o Nome do Cliente:\n"); scanf("\n%39s", &cl); senha2++; if(senha2 <10){ printf("\t >>> Cliente: %39s\t>>> Senha: 0%i\n\n", cl, senha2); } else { printf("\n\t>>Cliete:%s \t>>Senha: %i\n\n", cl, senha2);} break; default : printf ("Opção invalida!\n"); break; } //while ((op!=1)&&(op!=2)&&(op!=3)); //goto inicio; } while ((op!=1)&&(op!=2)&&(op!=3)); goto inicio; }
  5. Dexterpk

    C criar fila em c

    top mano... inclui "inicio:" "goto inicio;" pra retornar ao menu, mas vou tentar esse switch case vlwzão
  6. Dexterpk

    C criar fila em c

    Olá, estou tentando criar uma fila em C, mas não sei como faço pra que a minha função retorne ao menu, e nem consigo determinar um ponto de parada pra a execuçao da fila. grato. #include <stdio.h> #include <stdlib.h> #include <locale.h> main(){ setlocale(LC_ALL, "Portuguese"); int senha=0; // posição char cl [20]; //cliente int op=0; //operação printf("#################### BEM VINDO ####################\n\n"); printf("OPERAÇÃO\n"); printf("Digite (0) pra fechar aplicação\n"); printf("Digite (1) para saques e depositos\n"); printf("Digite (2) para previdência\n"); scanf("%i", &op); system("cls"); if(op==1){ do{ printf("SAQUES E DEPÓSITOS\n"); printf("\nDigite o Nome do Cliente:\n"); scanf("\n%19s", &cl); senha++; printf("\t>>Cliete:%s\t>>Senha: PAG 0%i\n", cl, senha); } while ((senha>=1&&senha<20)); if(senha==0){ printf("Fila vazia"); if(senha==20){ printf("Fila Cheia"); } } } if(op==2){ do{ printf("PREVIDÊNCIA"); printf("\nDigite o Nome do Cliente:\n"); //system("pause"); //system("cls"); scanf("\n%19s", &cl); senha++; printf("\t>>Cliete:%s \t>>Senha:PREV 0%i\n", cl,senha); } while ((senha>=1)&&(senha<=20)); if(senha==0){ printf("Fila vazia"); if(senha==20){ printf("Fila Cheia"); } } } system("pause"); }

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!