Ir ao conteúdo
  • Cadastre-se

Marcos Antonio Conceição

Membros Juniores
  • Total de itens

    3
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. Compreendo Sim O erro foi meu por não ter colocado o que eu já conseguir desenvolver do codigo porém, Estagnei Segue o Codigo Desenvolvido até o momento #include <stdio.h> #include <stdlib.h> typedef struct cliente { int cod; char nome [40]; } Cliente; typedef struct fila { Clientes clientes [1000]; int inicio; int fim; } Fila; typedef struct registro { Cliente c; float vlpago; float vlcobrado; float troco; } Registro; Fila caixa1; Fila caixa2; Fila caixa3; Registro reg_caixa1 [1000]; Registro reg_caixa2 [1000]; Registro reg_caixa3 [1000]; // inicialização das variaveis int caixa1, caixa2, caixa3; printf("MENU DE opções:\n\n"); printf("Escolha o caixa no qual deseja fazer a simulacao\n"); printf("1 para caixa 1 | 2 para o caixa 2 | 3 para o caixa 3 | 4 para sair\n"); Op: printf("Opcao: ");fflush(stdin); switch(getche()) { case '1' : caixa1(); break; case '2' : caixa2(); break; case '3' : caixa3(); break; case '4' : exit(0); break; case '5' : gravar(); break; default : printf("Invalido!\n\n"); system("PAUSE"); return 0; }
  2. Existem diferentes formas de manipulação de itens em estruturas lineares. Uma das formas de manipulação é a “fila”, que implementa o conceito de FIFO (First In, First Out), no qual o primeiro elemento que entra é o primeiro que sai. Muitas vezes, o controle de execução dos processos em um sistema operacional é gerenciado utilizando este conceito, para que o sistema possa atender de forma satisfatória, e sob uma determinada ordem, diversas tarefas que são executadas simultaneamente. A seguir, propomos outra tarefa que também é gerenciada deste modo: um supermercado possui 3 filas de carrinhos (caixas) que vão chegando e são atendidos quando chega a sua vez. O que deve ser realizado na questão: 1) Primeiramente defina um tipo abstrato de dados (TAD) para comportar os dados de um carrinho: um identificador numérico, o nome do cliente (com máximo de 30 caracteres); o número de produtos; e o valor total da compra. 2) Em seguida, crie um tipo abstrato de dados (TAD) que define a “fila” de carrinhos, para comportar um máximo de 10 clientes. 3) E, por último, crie três filas de carrinhos (os caixas), como três variáveis globais: caixa1, caixa2 e caixa3. 4) De posse desse trecho de código, faça as seguintes rotinas ou funções: · Crie a função “enqueue” ou “insert”, que recebe por parâmetro os dados de um carrinho (encapsulados em um tad) e insere na fila escolhida pelo cliente, verificando se existe espaço na fila, e emitindo mensagem de erro caso a fila esteja cheia. · Crie uma função “inicializa”, que esvazia as 3 filas no inicio do dia de trabalho. · Crie a função “remove”, que retira um cliente de uma fila indicada. · Crie também uma função “total”, que recebe uma fila de carrinhos como parâmetro e retorna o valor total arrecadado pelo supermercado nela. 5) No main, chame estas rotinas para: o Inicializar as filas o Colocar alguns clientes nas filas (4 ou 5 em cada uma bastam). o Retirar pelo menos um cliente de uma das filas. o E por ultimo calcular seus valores totais. Dicas: · Você pode fazer a fila com vetores de carrinhos; ou com nós alocados dinamicamente. · Prefira passar a fila por parâmetro e por referencia ao fazer uma rotina. · Diferencie os conceitos de pilha, fila e lista antes de iniciar a questão.
  3. Eu fiz um codigo fonte para esse questão Vendo a greve dos caminhoneiros gerar a falta de combustível, você decide vender um programa para auxiliar o trabalho de um posto de combustível. Num posto de combustível a informação necessária diz respeito aos seguintes dados: total de litros consumido, valor do combustível, total arrecadado. O que deve ser realizado na questão: Vamos programar esta solução utilizando vetores. · O vetor A deve conter o total de litros que cada veículo abasteceu. · O vetor B deve ter um caractere representando o combustível: ‘G’ para gasolina, ‘E’ para etanol, ‘D’ para diesel. Use outros se desejar. · O vetor C deve receber o total pago por cada cliente, durante o dia de trabalho (ou seja, o valor do vetor A vezes o preço do combustível informado no vetor B). Seu programa deve: · pedir os dados de um dia de trabalho, para o vetor A e B. · calcular os dados do vetor C. · calcular o total de arrecadação do posto naquele dia. Faça um teste com 20 entradas de cliente (dados de trabalho de um dia) e mostre todos os resultados. SEGUE o CODIGO #include <cstdio> #include <string.h> #include <iostream> #include <conio.h> int main(){ int i, VETOR_A[100], Cont=0; char VETOR_B[100], Op= 'S', Aux[10]; float VETOR_C[100], PRECO , SOMA=0; do{ printf("\nCLIENTE %d:\n\n", Cont+1); printf("DIGITE O COMBUSTIVEL UTILIZADO:\n \n= G = GASOLINA - R$ 4,49\n= E = ETANOL - R$ 2,69\n= D = DIESEL - R$ 3,39\n\n"); do{ fflush(stdin); scanf ("%c", &VETOR_B[Cont]); if (toupper(VETOR_B[Cont])=='G'){strcpy(Aux,"GASOLINA"); PRECO=4.49; Op= 'p';} else if(toupper(VETOR_B[Cont])=='E'){strcpy(Aux,"ETANOL" ); PRECO=2.69; Op= 'p';} else if(toupper(VETOR_B[Cont])=='D'){strcpy(Aux,"DIESEL" ); PRECO=3.39; Op= 'p';} else {printf("COMBUSTIVEL NAO CADASTRADO, SO E PERMITIDO OS TRES COMBUSTIVEIS CADASTRADO NO SISTEMA\n"); } }while (Op != 'p'); do{ printf ("\nDIGITE O TOTAL DE LITROS%S ABASTECIDO: ", Aux); fflush (stdin); scanf ("%d", &VETOR_A[Cont]); if (VETOR_A[Cont] >=0){ VETOR_C[Cont] = (float)VETOR_A[Cont] * PRECO; } else{ printf("NAO PODE EXISTIR VALOR NEGATIVO...!\n"); } }while(VETOR_A[Cont] < 0); Cont++; printf("\nDESEJA CADASTRAR OS DADOS DE OUTRO CLIENTE? S/N \n"); fflush(stdin); scanf ("%c", &Op); }while(toupper(Op) != 'N'); printf("\n"); for(i=0; i<Cont; i++){ printf("TOTAL DE LITROS ABASTECIDO: %d COMBUSTIVEL UTILIZADO: %c VALOR TOTAL: %2f\n",VETOR_A[i], VETOR_B[i], VETOR_C[i]); SOMA += VETOR_C[i]; } printf("\nVALOR TOTAL ARRECADADO NO DIA -> R$ %.2f\n\n",SOMA); getch(); return 0; } E Essa Foi a Resposta do Professor Cont pode passar de 100 elementos no cadastro -3 O resto está OK. Alguem Pode Me Ajudar a Resolver Isso Grato Desde Já

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×