Exercícios Resolvidos de Entrada de dados

Ver Teoria

Enunciado

Faça um programa para uma loja de tintas. O programa deverá pedir o tamanho em metros quadrados da área a ser pintada. Considere que a cobertura da tinta é de 1 litro para cada 6 metros quadrados e que a tinta é vendida em latas de 18 litros, que custam R$ 80,00 ou em galões de 3,6 litros, que custam R$ 25,00.

Informe ao usuário as quantidades de tinta a serem compradas e os respectivos preços em 3 situações:

  • comprar apenas latas de 18 litros;
  • comprar apenas galões de 3,6 litros;
  • misturar latas e galões, de forma que o preço seja o menor. 

Passo 1

E aí, galeraaa! Beleza? Esse tipo de exercício tem a cara de que poderia cair na sua prova. Hahaha

Vamo lá, um passo de cada vez. A primeira coisa que a gente tem que fazer, como sempre em programação, é pensar sobre um passo-a-passo que resolve o nosso problema. Vamo lá!

  • Perguntar pro usuário as medidas
  • Calcular quantos litros são necessários
  • Calcular o custo usando apenas latas
  • Calcular o custo usando apenas galões
  • Calcular o custo usando a combinação de latas e galões
  • Exibir pro usuário os custos calculados

Show! Pra perguntar pro usuário a gente tem que usar a função input(). Porém, a função input() sempre retorna texto, lembra? A gente precisa converter o resultado pra número real. Então, bora perguntar a medida pro usuário usando o seguinte código:

Show! Agora já temos a medida. Vamos pro próximo passo!

Passo 2

Agora, a gente precisa calcular quantos litros de tinta a gente precisa pra pintar toda a medida que o usuário forneceu. Bora pra famosa regra de 3!

Nesse caso, a gente já tem a variável medida! Então, nossa matemática vai ficar assim:

Agora a gente só precisa passar pra Python! Fica assim:

Beleza! Já temos a quantidade de tinta necessária pra pintar a parede do cliente! Agora vamos calcular os preços. Partiu passo 3!

Passo 3

Aqui, a gente precisa calcular quantas latas de 18 litros a gente precisa pra pintar tudo. Pra isso, a gente pode dividir o número de litros que a gente precisa por 18, aí vamos obter o número de latas, certo?

Bom, só tem um problema. Se a gente só dividir por 18, pode ser que a gente encontre como resultado uma fração. Porém, não tem como a gente comprar meia lata de tinta, concorda comigo? Por isso, a gente precisa somar 1 no resultado final. Calma, vou te dar exemplos.

Se a gente precisa de 15 litros, nossa conta 15//18 (divisão inteira) vai dar 0. Porém, com zero latas não dá pra gente pintar, né? Hahaha

Em outro caso, 22 litros. 22//18 vai dar 1. Mas na verdade, a gente precisa de um pouco mais de uma lata, concorda??

Na verdade, como não podemos fracionar nossa lata, sempre temos que arredondar pra cima! Faremos isso, importando um módulo chamado “math” (que nada mais é do que um código que reúne várias funções matemáticas) e utilizaremos especificamente a função “ceil” para pegar o teto da operação de divisão.

Dá uma olhada em como o código vai ficar:

Show! Já sabemos o número de latas! Agora vamos calcular o número de galões.

Passo 4

Pra calcular o número de galões, a lógica é exatamente a mesma! Não podemos fracionar os galões, então também precisamos sempre arredondar pra cima! Em python:

Pronto! Agora já temos a quantidade de latas e galões. Vamos calcular os preços agora.

Passo 5

O preço de cada lata é R$80,00 e o preço de cada galão é R$25,00. Então, vamos fazer essa conta em Python!

Agora, o preço da combinação:

Precisamos conversar sobre como a gente calculou a combinação. Se liga, a gente calculou o número mínimo que a gente precisava de latas. Ou seja, a cada 18 litros a gente compra uma lata. Depois, quando sobrar menos de 18 litros, a gente calcula esse resto e divide por 3.6 (quantidade que vem nos galões). E aí sim, a gente arredonda pra cima. Também fizemos a multiplicação de cada produto por seus respectivos preços, 80 e 25.

Ufa! Essa era complicada. Mas foi!! Agora só precisamos printar!

Passo 6

Pra exibir pro usuário, precisamos usar a função print().

E assim, finalizamos nosso exercício.

Valeuuu!

Resposta