Ir ao conteúdo
  • Cadastre-se

Programa de sorveteria


Leonardo Lonogui

Posts recomendados

Olá, tenho um trabalho de programação na faculdade pra fazer, meu grupo está criando um programa de sorveteria.

No entanto, o programa tem uma funcionalidade que é cadastrar clientes e armazenar o gasto dos mesmos.

Eu queria saber como faço para o programa ler o gasto de uma das pessoas escolhidas dentro do arquivo e adicionar mais gasto de acordo com o que esta pessoa comprar.

O arquivo está escrito da seguinte maneira:

"NOME1" : "GASTO1"

"NOME2" : "GASTO2"

"NOME3" : "GASTO3:

 

Ou seja, o programa deve perguntar se a pessoa já está cadastrada no sistema. Caso sim, deve-se digitar o nome de pessoa no programa , ler o respectivo gasto e somar com o novo gasto desta pessoa.

Link para o comentário
Compartilhar em outros sites

  • Moderador

Prezado,

 

Seja bem-vindo ao Fórum do Clube do Hardware; obrigado por sua participação! :)

 

Quanto à sua dúvida, para podermos lhe ajudar, nós precisamos de mais alguns detalhes, tais como:

 

  • parte do código que já foi feito;
  • caso não tenha um código feito, qual o algoritmo que você pretende usar para resolver o problema;
  • você tem experiência com esta linguagem de programação?

 

Por favor, não leve para o lado pessoal, mas o nosso objetivo principal aqui é ajudar você a resolver o problema, se simplesmente postássemos um código já pronto, você nunca aprenderia de fato... ;)

 

Atenciosamente,

Equipe Clube do Hardware

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Olá, obrigado por responder
Quanto ao algoritimo, você se refere a linguagem de programação que eu pretendo utilizar? Se sim, pretendo usar em C.

Tenho experiência razoável em linguaguem C.

 

Aqui está o código:

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

main()

{
    float lucro = 0;

    FILE *p;
    p = fopen("Lucro_Bruto.txt", "r");
    if( p != NULL) fscanf(p,"Lucro Bruto: %f", &lucro);
    fclose(p);

int qtd, cod,;
char extra, resp1,resp2;
float vt=0,troco,vr;

      printf("\nBem vindo a Sorveteria\n\n");
      printf("Lista de sorvetes\n\n Sorvete                 Codigo      Preco\n\n Casquinha chocolate       0        1,20\n Casquinha Baunilha        1        1,20\n Casquinha Mista           2        1,20\n");
      printf(" Cascao chocolate          3        2,00\n Cascao Baunilha           4        2,00\n Cascao Misto              5        2,00\n");

      struct cadastro
      {
         char nome[50];
         float gasto;
      }c;

      printf("\n\n O cliente tem cadastro?(s ou n)\n");
      scanf("%c", &resp1);
      if(resp1 == 'n')
      {
          printf("O cliente deseja fazer o cadastro?(s ou n)\n");
          fflush(stdin);
          scanf("%c", &resp2);
          if(resp2 =='s')
          {
              printf("Digite o nome do cliente\n");
              fflush(stdin);
              gets(c.nome);

              FILE *p;
              p = fopen("cadastro.txt", "a");
              fprintf(p,"%s : ", c.nome);
              fclose(p);
              printf("Cliente cadastrado com sucesso\n");

          }

      }

do{   printf("\nDigite o Codigo do sorvete\n");
      scanf("%d",&cod);
      printf("\nQuantos ?\n");
      scanf("%d",&qtd);
     switch (cod)
        {
           case 0:
                   vt+=qtd*1.20;
           break;
           case 1:
                   vt+=qtd*1.20;
           break;
           case 2:
                   vt+=qtd*1.20;
           break;
           case 3:
                   vt+=qtd*2.00;
           break;
           case 4:
                   vt+=qtd*2.00;
           break;
           case 5:
                   vt+=qtd*2.00;
           break;
           default:
                   printf ("\n\nEste iten Nao consta no menu.\n");
        }
           printf("\nAlgo mais? s ou n(sim ou nao)\n");
           getchar();
           scanf("%c", &extra);
  }
    while(extra =='s');

    printf("\nO valor é: %.2f\n\n", vt);

    printf("Insira o valor recebido do cliente\n");

    scanf("%f", &vr);

    troco = vr - vt;

    if(troco>0)printf("\nO troco é : %.2f\n", troco);
    if(troco==0)printf("\nNao ha troco\n");
    if(troco<0)printf("\nO valor recebido é insuficiente\n");

    lucro = lucro + vt;

    p = fopen("Lucro_Bruto.txt", "w");

    fprintf(p,"Lucro Bruto: %.2f", lucro);

    fclose(p);

    if(resp2 == 's')
    {
       FILE *p;
       p = fopen("cadastro.txt","a");
       fprintf(p,"%.2f\n", vt);
       fclose(p);
    }

}

 

Como pode-se perceber, o programa consegue,atualmente, cadastrar novos clientes e armazenar seu primeiro gasto.

Entretanto, se o cliente já for cadastrado(resp1=='s'), não sei como posso ler o gasto que esse cliente já fez e somar com o novo gasto.
 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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