Jump to content
Fórum Script Brasil
  • 0

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


Question

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 to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Cloud Computing


  • Forum Statistics

    • Total Topics
      148955
    • Total Posts
      645010
×
×
  • Create New...