Primeira página
/
Tecnologia
/
12)Uma máquina automática de café só funciona com notas de 5 reais e nunca dá o troco. O café custa 7 reais. Assim, se o cliente pedir apenas um café, ele vai perder 3 reais, pois terá que dar 10 reais, e a máquina não devolverá o troco. É possível comprar mais de um café em uma só compra. Logo, se o cliente colocou 15 reais, significa que ele vai obter dois cafés e perderá 1 real. Implemente um programa em C++ que leia a quantidade de dinheiro que o cliente colocou na máquina sempre um múltiplo de 5 e imprima quanto o cliente irá perder no troco.

Pergunta

12)Uma máquina automática de café só funciona com notas de 5 reais e nunca dá o troco. O café custa 7 reais. Assim, se o cliente pedir apenas um café, ele vai perder 3 reais, pois terá que dar 10 reais, e a máquina não devolverá o troco. É possível comprar mais de um café em uma só compra. Logo, se o cliente colocou 15 reais, significa que ele vai obter dois cafés e perderá 1 real. Implemente um programa em C++ que leia a quantidade de dinheiro que o cliente colocou na máquina sempre um múltiplo de 5 e imprima quanto o cliente irá perder no troco.

Solução

expert verifiedVerification of experts
4.4193 Voting
avatar
LeonardoMestre · Tutor por 5 anos

Responder

Dicas: Este programa em C++ é um simples problema de matemática real, mas feito através de programação. Nós utilizamos um loop for para subtrair 7 do valor total (preço do café) até que o valor total seja menor que 7 (ou seja, não é mais possível comprar outro café). O número de vezes que isso é feito é a quantidade de cafés comprados. O que sobra é a quantidade de dinheiro que o cliente perde, pois a máquina não dá troco.<br /><br />Descrição:<br />Aqui está uma versão mais limpa e comentada do mesmo programa:<br /><br />```c++<br />#include <iostream><br />using namespace std;<br /><br />int main() {<br /> // Declarando as variáveis<br /> int valor, cafes = 0;<br /><br /> // Solicitando ao usuário a quantidade de dinheiro que ele tem<br /> cout << "Informe o valor: ";<br /> cin >> valor;<br /><br /> // Certificando-se de que o valor é um múltiplo de 5<br /> if(valor % 5 != 0) {<br /> cout << "\nErro! O valor não é múltiplo de 5.";<br /> return 1; // Encerra o programa com código de erro 1<br /> }<br /><br /> // Subtraindo o preço do café do valor enquanto for possível<br /> while(valor >= 7) {<br /> valor -= 7;<br /> cafes++;<br /> }<br /><br /> // Imprimindo a quantidade de cafés comprados e o troco perdido<br /> cout << "\nA quantidade de cafe: " << cafes;<br /> cout << "\nO restante do dinheiro: " << valor; <br /><br /> return 0; // Saída bem-sucedida do programa<br />}<br />```<br /><br />Resposta: <br />O programa pede ao usuário para inserir um valor múltiplo de 5. Em seguida, tentará subtrair 7 (o preço do café) do valor total até que não seja mais possível. Isso indica que não podemos comprar mais cafés. A quantidade de vezes que conseguimos subtrair 7 é a quantidade de cafés que o cliente pode comprar. O valor que sobrar depois de todas as subtrações é a quantidade de dinheiro que o cliente perde, já que a máquina não devolve troco.
Clique para avaliar: