Ir ao conteúdo
  • Cadastre-se

PMiler

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. É o seguinte não to conseguindo fazer funcionar do modo que deveria ser,esse problema esta na função caixa,o que deveria acontecer é você digita o código do produto e ele compara se é igual ao código que tu teria cadastrado anteriormente,e printa ele depois,só que desse modo que eu fiz não ta funcionando e eu não consigo pensar em outro modo de realizar essa tarefa.Agradeço a atenção. o exercício em si e o código a baixo. /*Questão 2. Escreva um programa que simule uma caixa registradora: o operador digita o código do produto e a quantidade; se digitar "+", novo conjunto de dados (código + quantidade) deve ser lido; se digitar "=", o total deve ser fornecido. Os produtos disponíveis, bem como seus códigos e preços, são apresentados na tabela abaixo: Código Descrição Preço 001 Desodorante 56,00 023 Pasta Kolynos 89,00 108 Sabonete 40,00 120 Escova dentes 90,00 OBS: Monte uma estrutura para representar esta tabela. Crie um menu de opções as quais permitam melhor interação junto ao usuário.*/ #include <cstdio> #include <ctype.h> #include <iostream> // cout, cin #include <stdlib.h> // rand, atof #include <stdio.h> // printf, scanf, #include <conio.h> // getch printf #include <string.h> // strlen, strcat #include <windows.h> // COORD #include <cmath> // pow const int tam = 3; int count=0,op=0,m=1,z=0; char p[2]; struct tab { int codigo; char descricao[30]; float preco; }; struct tab tabela[tam]; void monta_menu(void){ system("cls"); printf("\tMenu\n\n\n"); printf("\t0-Sair\n"); printf("\t1-Cadastrar Produtos\n"); printf("\t2-Listar Produtos Cadastrados\n"); printf("\t3-Caixa Registradora\n"); printf("\t\tEscolha a opcao:"); scanf("%d",&op); } void cadastrotab(void){ for(count = 0 ; count < tam ; count++) { printf("\nCodigo do Produto: "); scanf("%d",&tabela[count].codigo); printf("Descricao do Produto: "); scanf("%s",tabela[count].descricao); printf("Preco do Produto: "); scanf("%f", &tabela[count].preco); } } void listar(){ for(int i=0;i<tam;i++){ printf("\n\t%d\t\t%s\t\t%5.2f ",tabela.codigo,tabela.descricao, tabela.preco); } } //------------------------------------------------------------------------------------------------------------------------------ void caixa(){ for(int i = 0; i < tam;i++ ) { printf("Digite o Codigo do Produto: "); scanf("%d",&z); if(tabela.codigo == z){ printf("\n\tCodigo\t\tDescricao\tPreco"); printf("\n\t%d\t\t%s\t\t%5.2f ",tabela.codigo,tabela.descricao,tabela.preco); printf("\n\n\nDigite + para adicionar produtos ou = para visualizar o total: "); scanf("%s",&p); if(p == "+"){ i++; } else { system ("cls"); for(int i=0;i< tam;i++){ printf("\n\tCodigo\t\tDescricao\tPreco"); printf("\n\t%d\t\t%s\t\t%5.2f ",tabela.codigo,tabela.descricao, tabela.preco); //printf("\n\t%d\t\t%s\t\t%5.2f ",tabela.codigo,tabela.descricao,tabela.preco); } break; } } else{ printf("\t\tNenhum Produto corresponde a esse Codigo\n\n"); } } } //----------------------------------------------------------------------------------------------------------------------------------------------------- int main (){ monta_menu(); while(m){ switch(op){ case 0: system ("cls"); m = 0; break; case 1: system ("cls"); cadastrotab(); getch(); monta_menu(); break; case 2: system ("cls"); printf("\n\n\t\t\tLISTA DE PRODUTOS\n\n"); printf("\n\tCodigo\t\tDescricao\tPreco"); listar(); getch(); monta_menu(); break; case 3: system ("cls"); caixa(); getch(); monta_menu(); break; default: monta_menu(); } } }

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...