Implemente um carro. O tanque de combustível do carro armazena no máximo 50 litros de gasolina. O carro consome 15 km/litro. Deve ser possível:
- Abastecer o carro com uma certa quantidade de gasolina;
- Mover o carro em uma determinada distância (medida em km);
- Retornar a quantidade de combustível e a distância total percorrida.
Passo 1
Eai, tudo beleza?
Nessa questão vamos implementar um carro usando POO. Para isso, vamos definir os atributos , para guardar o valor limite da gasolina no tanque do carro, , que armazena o consumo do carro em km/l, , que salva a quantidade de gasolina atual do carro, e a , para armazenar a quantidade total que o carro já andou.
Além disso, vamos ter como métodos , para abastecermos o carro de acordo com a quantidade de gasolina que iremos passar como parâmetro, , para movimentarmos o carro de acordo com o parâmetro passado, , que retorna o parâmetro , e , que retorna o parâmetro .
Perceba que todos os atributos e parâmetros declarados foram do tipo . Isso foi só um meio de evitarmos no nosso código, pois teremos divisão com valores que nem sempre serão múltiplos.
Passo 2
Vamos implementar o método . Primeiramente, vamos checar se o valor passado como parâmetro é válido. Caso seja um valor negativo, vamos imprimir na tela que esse valor é inválido. Caso ele ultrapasse a capacidade do tanque, vamos imprimir uma mensagem falando isso. Caso seja um valor válido, vamos incrementar o valor de gasolina.
Passo 3
Agora, vamos incrementar o método mover. Primeiro, vamos criar uma variável para guardar o valor da distância máxima que o carro pode mover com a gasolina que ele possui.
Vamos fazer uma análise semelhante a feita no método anterior. Vamos checar se o valor passado como parâmetro é válido. Primeiramente, vamos checar se ele é negativo, caso seja, imprimiremos uma mensagem informando isso. Depois, vamos checar se a distância passada excede a limite. Por fim, se o valor for válido, vamos incrementar a distância total e vamos reduzir na gasolina o valor que foi gasto.
Passo 4
Por fim, basta fazermos as funções que retornam o valor da distância total percorrida e o valor da gasolina: