Jump to content
Fórum Script Brasil

joaoguinadin

Membros
  • Posts

    2
  • Joined

  • Last visited

Everything posted by joaoguinadin

  1. Olá, Estava desenvolvendo um programa para exibir o fatorial de números. Na hora de testar, notei que o programa se comporta de maneira estranha: o resultado apresentado é o produto dos possíveis retornos da função. Vou inserir o código, para facilitar o entendimento: #include <iostream> using namespace std; int fatorial(int numero); int main(){ cout <<fatorial(6); } int fatorial(int numero){ if(numero>1){ return numero*fatorial(numero-1); }else{ return 1;} } Exemplo: Se o argumento inserido for 6, e o return do else tiver valor 3; o resultado exibido será 6! x 3. Gostaria de saber por que ocorre isso e não o retorno do valor 1. Desde já, agradeço.
  2. 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; }
×
×
  • Create New...