Ir para conteúdo
Fórum Script Brasil
  • 0

Problema em um código na aplicação do comando IF


joaoguinadin

Pergunta

Olá,

Iniciei na programação há 4 dias e estou criando códigos para treinar meu aprendizado. O programa abaixo é uma simulação de uma interface de compra de produtos, que deveria dar o valor dos produtos, e posteriormente o troco a se retornar. Deixarei o código abaixo. Pelo que identifiquei, o problema inicia-se na linha 43, e o programa pula para a 41. Não estou tendo nenhum problema na compilação, mas sim na execução. Agradeceria imensamente por ajuda.

#include <iostream>
#include <cstdlib>

using namespace std;
int main ()

{

//Definição das variáveis

    float bolachas,salgadinhos,refrigerantes,pagamento,faltantes;
    char resposta, s = 's';
//Apresentação dos produtos e início das compras


    cout <<"Preço unitário dos produtos:" <<endl <<"Pacote de bolacha: R$2,50" <<endl <<"Salgadinho: R$ 5,00" <<endl <<"Refrigerante: R$ 4,50" <<endl;
    cout <<"Pressione qualquer tecla para iniciar suas compras";
    getchar();
    system ("clear");
    
//Compras;

    cout <<"Quantos pacotes de bolacha você gostaria de adquirir?" <<endl;
    cin >> bolachas;
    system ("clear");
    
    cout <<"Quantos salgadinhos você gostaria de adquirir?" <<endl;
    cin >> salgadinhos;
    system ("clear");
    
    cout<< "Quantos refrigerantes você gostaria de adquirir?" <<endl;
    cin >> refrigerantes;
    system ("clear");
    
// Valor das compras e pagamento;
    
    float total;

    total = 2.50 * bolachas + 5.00 * salgadinhos + 4.50 * refrigerantes;
    cout <<"O valor de sua compra é de R$ " <<total <<"." <<endl;
    cout <<"Digite a soma do valor das notas inseridas na máquina." <<endl;
    cin >> pagamento;
    system ("clear"); //daqui, vai para a linha 71 e não executa os comandos no meio
    
// Troco ou valor faltando;

    float troco=(pagamento-total);
    if (troco > 0) { cout <<"Você receberá o troco no valor de R$ " <<troco <<". Retire na máquina" <<endl ;
    }else {
         if (troco == 0) {cout <<"Não há troco" <<endl ;
         }else {cout <<"Desculpe, não é possível concluir a compra, faltam R$ " <<troco <<". Para prosseguir, insira o valor em falta, ou cancele o procedimento." <<endl;
               cout <<"Deseja prosseguir com a compra (s/n)? Em caso negativo, os procedimento será cancelado." <<endl;
               cin >> resposta;
               if (resposta == s) { cout <<"Obrigado! Prosseguiremos com a compra." <<endl;
                                   cout <<"Insira as notas faltantes e indique o valor da soma" <<endl;
                                   cin >>faltantes;
                                   cout <<endl;
                                   system ("clear");
                                   cout <<"O seu troco é de R$ " <<faltantes+troco <<endl; }
               else { cout <<"A sua compra foi cancelada." <<endl; }
    }
}
    
 //Final e reinício da operação;
 
    
    cout <<"Operação finalizada. Agradecemos a preferência. Pressione ENTER para confirmar" <<endl;
    getchar();
    system("clear");
    
    cout <<"Pressione qualquer botão para iniciar sua compra!" <<endl;
    getchar ();
    system ("clear");
    
    
        return 0;
    }

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...