#include <stdio.h>
#include <stdlib.h>
float sub (float sub,float sub1);
float totaliza (float total , float total2);
void messagens ();
void menus();
int main()
{
typedef struct produto
{
char nome [101];
double valor;
} Produto;
int max = 100;
Produto produto[max];
int qtd = 0;
int x = 0;
int menu;
int menuEntrada;
int vai;
double total = 0;
int um = 1;
int dois = 2;
int umdois;
float dinheiro = 0;
float troco = 0;
int usuario;
float totalzao;
do
{
menus();
printf("\nDigite uma opcao ");
scanf("%i",&menuEntrada);
system("cls");
switch (menuEntrada)
{
case 0:
system("cls");
break;
case 1 :
do
{
messagens();
printf("\nDigite uma opcao ");
scanf("%i",&menu);
system("cls");
switch (menu)
{
case 0:
system("cls");
break;
case 1:
printf("================== Adicionar Produto ================");
printf("\n");
printf("\nAdicionar");
printf("\nEntre com nome do produto: ");
scanf("%100s",&produto[qtd].nome);
do
{
printf("Entre com o valor: ");
scanf("%lf", &produto[qtd].valor);
if (produto[qtd].valor < 0)
{
printf("Numero invalido\n");
}
}
while (produto[qtd].valor < 0);
qtd++;
printf("\nProduto\t\t\t\t\t|Valor\n");
for(x=0; x<qtd; x++)
{
printf("\n%s\t\t\t\t\t|%.2lf\n",produto[x].nome,produto[x].valor);
}
printf("\nOperador do Caixa: %i",usuario);
vai = getchar();
getchar();
system("cls");
break;
case 2:
printf("================== Remover Lista ================");
printf("\nUltimo Produto\nRemovido com sucesso\n");
qtd--;
printf("\nOperador do Caixa: %i",usuario);
vai = getchar();
getchar();
system("cls");
break;
case 3:
printf("================== Pagamento ================");
printf("\n");
printf("\nProduto\t\t\t\t\t|Valor\n");
for(x=0; x<qtd; x++)
{
printf("\n%s\t\t\t\t\t|%.2lf",produto[x].nome,produto[x].valor);
}
for (x= 0; x<qtd; x++)
{
total= total + produto[x].valor;
}
printf("\n");
printf("\nValor Total da Compra \t\t%.2lf\n",total);
printf("\nEntre com Dinheiro ");
scanf("%f",&dinheiro);
printf("\nOperador do Caixa: %i",usuario);
troco = sub(dinheiro,total);
printf(" Troco %.2f\n",troco);
printf("\n Deseja Pagar a conta \n");
printf("\n 1=sim 2=Nao\n");
printf("\nEscolha um Opcao ");
scanf("%i",&umdois);
if (umdois == um)
{
printf(" Sua conta foi paga com sucesso !\n\n");
printf(" Volte Sempre !!!\n");
}
else if ( umdois == dois)
{
printf("\nAperte Enter para voltar ao Menu Principal\n");
}
else
{
}
vai = getchar();
getchar();
system("cls");
break;
}
}
while (menu != 0);
case 5:
system("cls");
break;
case 2:
printf("================== OPERADOR ====================\n");
printf("\n Entre com codigo do operador: ");
scanf("%i",&usuario);
printf("\n");
printf("=============================================\n");
getchar();
vai = getchar();
system("cls");
break;
case 3:
printf("================== FECHAMENTO ====================\n");
totalzao = totaliza( total , totalzao);
printf("\nFechamento diario do mercado: %.2lf", totalzao);
printf("\n\n=============================================\n");
vai = getchar();
getchar();
system("cls");
break;
}
}
while (menuEntrada != 0);
return 0;
}
void menus ()
{
printf("================== CAIXA ====================\n");
printf(" \n = 0 - Sair =\n");
printf(" = 1 - Abrir Caixa =\n");
printf(" = 2 - Codigo do Vendedor =\n");
printf(" = 3 - Caixa Total =\n");
printf("\n=============================================");
}
void messagens ()
{
printf("================== CAIXA ====================\n");
printf(" \n = 0 - Sair =\n");
printf(" = 1 - Adicionar Produtos =\n");
printf(" = 2 - Remover Produtos =\n");
printf(" = 3 - Efetuar Pagamento =\n");
printf("\n=============================================");
}
float sub (float sub,float sub1)
{
float resultsb = sub - sub1;
return resultsb;
}
float totaliza (float total , float total2){
float resultadoss = total + total2;
return resultadoss;
}
qual a sua duvida?
Quero digitar um codigo e apareceu o nome do produto na.lisra de itens do caixa inves de ficar adiciinando por nome todos os produtos