Jump to content

Duvida em finalizar um projeto.


Postagens Recomendadas

Olá Boa noite a todos! Eu sou novo aqui no fórum e sou novo na área da programação também.

Então já começo com uma dúvida e gostaria da ajuda dos experientes rs, estou  desenvolvendo um pequeno projeto de lanchonete em c++  e a minha dúvida seria o seguinte 

estou precisando de uma ideia,  como faço  para finalizar uma venda e parar o laço de repetição no meu pequeno projeto?

Estou sem ideia alguma rs, então gostaria de alguma opinião , quem puder ajudar eu agradeço .

Link to comment
Compartilhe em outros sites

Olá Alex
Bom, imagino que dentro do laço você esteja captando o nome ou código dos itens da venda.
Faça com que dentro do laço haja uma verificação se a tecla/texto digitado é sair; Se sim, altere o valor que faz o laço continuar em execução.

Não sei se consegui ser claro o suficiente. Se ficou com dúvida posta um trecho do seu código pra eu dar um bizu.

Link to comment
Compartilhe em outros sites

Bom dia Alex

A lógica que você utilizou está correta, ao inserir 00 no fim da seleção o loop deve ser parado, então talvez eu não tenha entendido sua dúvida.

Alternativamente, você pode inserir a opção 00 como um case e assim encerrar a aplicação no meio da seleção de item:

int main()
{
    int ope = 0;
    do
    {
        printf(" 00 - Encerrar venda\n");
        printf(" 01 - Hamburger | preço: R$ 8.00\n");
        printf("Digite o código do produto =>");
        scanf("%d", &ope);
        
        switch (ope){
            case 0:
                break;
            case 1:
                printf("Hamburguer adicionado\n");            
                break;
            default:
                printf("Opção inválida!!\n");
                break;
        }
        system("cls");
    }while(ope > 00);
    printf("**Fim da venda**\n");
    printf("**Volte sempre**\n");
    return 0;
}

 

Link to comment
Compartilhe em outros sites

Oi amigo , qual seria a minha ideia , após o laço de repetição eu queria fazer parar o laço e não o fim do programa entendi , eu queria depois por a forma de pg tipo dinheiro , cartão , fazer o troco em dinheiro etc... isso eu já tenho em logica . só não consigo ver uma ideia para fazer o laço parar ...Não sei se vc entendeu minha dúvida. mas desde de já eu t agradeço a ajuda.

Link to comment
Compartilhe em outros sites

Ahh sim, entendi
Nesse caso você precisará de dois laços de repetição:

Laço principal onde haverá a lógica inicial do seu sistema(Iniciar uma venda, ver extrato, encerrar aplicação)

E o laço que já existe para seleção de itens. Nele você pode inserir toda a lógica de pagamentos após sua linha 

printf("\nValor total a pagar: R$ %0.2f", totalCompra);

 

E ao finalizar você ainda continuará dentro do laço principal de sua aplicação

Link to comment
Compartilhe em outros sites

Vamo lá
Você já está interrompendo corretamente o laço quando insere 00, mas caso você não "trave" a execução da aplicação dentro de um loop ao chegar ao fim do script sempre será encerrado.

Para contornar isso, toda a lógica da sua aplicação deve estar dentro de outro while

Um exemplo para ilustrar:

int main()
{
  	bool isRunning = true;
  	//Laço principal onde a aplicação ficará "presa" até que 'isRunning' seja false 
    do
    {
      int ope = 0;
      do
      {    
         //Lógica de leitura de itens
          [...]
      }while(ope > 00);

      //Logica do pagamento
      [...]

      printf("**Fim da venda**\n");
      printf("**Volte sempre**\n");
      
      //Verifique se deseja que a aplicação continue em execução 
  	  printf("Deseja iniciar nova venda\n");
	  [...]
    }while(isRunning);
  
  	printf("Fim da aplicação\n");
    return 0;
}

 

Link to comment
Compartilhe em outros sites

        
     
             


}
           
                               
            printf("Digite [1] para continuar [2] pagar em dinheiro [3] pagar no Débito.");
            scanf("%d", &ope);  
            system("cls");         
                 

}while(ope == 1);
    
    if(ope == 2){
        printf("Pagamento no Dinheiro: ");
    }else{
        printf("Pagamento no Débito: ");
    }
      Amigo eu mudei um pouco .....

Link to comment
Compartilhe em outros sites

Eu estava pensando em por um final tipo assim....

[1] continuar [2] pagar no dinheiro [3] pagar no cartão crédito [4] pagar no cartão débito.

E printar assim...

Dinheiro : 10,00 => Digitado pelo usuário

Troco: 5,00 => Feito pelo programinha.

Claro o laço parando para poder chegar a essa opção.

Primeiro projeto kkk quanto mas mexo mais fico enrolado ...

 

 

 

Link to comment
Compartilhe em outros sites

Crie uma conta ou entre para comentar 😀

Você precisa ser um membro para deixar um comentário.

Crie a sua conta

Participe da nossa comunidade, crie sua conta.
É bem rápido!

Criar minha conta agora

Entrar

Você já tem uma conta?
Faça o login agora.

Entrar agora


×
×
  • Create New...