Ir ao conteúdo
  • Cadastre-se
PMiler

Uma pequena ajuda sobre Struct

Recommended Posts

É 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();

                   

    }

    }

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





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

×