Programação Orientada a Objetos I

25/09/2017

0

Boa noite meus amigos, sou novo iniciante.

como faço criar as classes abaixo?

Implemente uma classe veículo. Essa classe deve ser composta pelos atributos diretos:

• Marca
• Modelo
• Ano
• qtdPortas

Além disso, o veículo é composto por várias partes: um motor, um tanque de combustível e 4 pneus (que serão classes).

O funcionamento do veículo depende das suas partes, da seguinte forma:

>>Motor

• Possui uma potência (em hp), uma taxa fixa de consumo
(em km/litro) e um tanque de combustível (ver abaixo).

• Possui um comando para avançar uma determinada quantidade de km. Se a pressão de mais de um pneu (ver abaixo)
estiver abaixo de 20 lb, o consumo do veículo aumenta em 30%. Se não houver combustível suficiente,
o veículo avança até o tanque esvaziar.


>> Tanque de Combustível

• Possui uma determinada capacidade e quantidade atual
de combustível (ambos em litros).

• Pode ser abastecido com uma certa quantidade de
combustível, limitado à sua capacidade máxima.


>> Pneu

• Cada pneu possui uma determina pressão (em lb).

• Pode ser calibrado com determinada pressão informada
(positiva ou negativa, sendo somada à atual).


Implemente as classes acima, usando composição (uma classe dentro da outra) quando necessário.
Lembre-se de implementar gets e sets (propriedades) necessários, bem como construtores adequados.

Faça uma tela onde seja possível realizar as seguintes operações:

• Instancie um veículo cujo motor tem 71 hp, consumo de 12 km/litro, tanque com capacidade para 50 litros, pneus
dianteiros com 27 lb e traseiros com 23 lb.

• Abasteça o tanque com 30 litros.

• Exiba na tela as informações sobre cada componente do
veículo.

• Avance 300 km.
• Reduza a pressão do pneu traseiro esquerdo para 17 lb.
• Avance 100 km.
• Reduza a pressão do pneu dianteiro direito para 18 lb.
• Abasteça mais 10 litros.
• Avance 200 km.

A cada operação de movimento, mostre na tela a distância percorrida e a quantidade de combustível restante.

* Os campos em vermelho devem ser informados pelo usuário na tela (pode-se usar edits ou outros componentes que achar necessário).
Paulo Silva

Paulo Silva

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar