Implemente:
a) Uma classe MeioDeTransporte com atributos ligado (boolean) e velocidade (inteiro) e métodos liga() e desliga (). O método ligado torna o atributo ligado true e o método desliga torna o atributo ligado false, além de tornar a velocidade zero. Crie também métodos get e set para modificar o atributo velocidade, sendo que a velocidade não pode ser negativa.

Passo 1

Vamos entender o que o exercício pede: precisamos criar uma classe chamada MeioDeTransporte que representa um meio de transporte com dois atributos principais: ligado, que indica se o transporte está ligado (um valor booleano), e velocidade, que representa a velocidade atual (um número inteiro). Também precisamos implementar métodos para ligar e desligar o transporte, além de métodos para obter e definir a velocidade, garantindo que a velocidade não seja negativa.

Passo 2

Primeiro, vamos criar a estrutura básica da classe MeioDeTransporte. Em Python, usamos a palavra-chave class para isso.

Passo 3

Vamos adicionar os atributos ligado e velocidade na classe. No método especial __init__, inicializamos ligado como False e velocidade como 0, já que o transporte começa desligado e parado.

Passo 4

Agora, vamos implementar o método liga(). Este método deve alterar o atributo ligado para True.

Passo 5

Em seguida, implementamos o método desliga(). Este método deve alterar ligado para False e também zerar a velocidade, ou seja, definir velocidade como 0.

Passo 6

Vamos criar os métodos get e set para o atributo velocidade. O método get_velocidade() retorna o valor atual da velocidade.

Passo 7

No método set_velocidade(), precisamos garantir que a velocidade não seja negativa. Se o valor passado for negativo, podemos definir a velocidade como 0 ou manter o valor anterior. Aqui, vamos definir como 0 para simplificar.

Passo 8

Aqui está o código completo da classe MeioDeTransporte seguindo todos os requisitos:
class MeioDeTransporte:
    def __init__(self):
        self.ligado = False
        self.velocidade = 0

    def liga(self):
        self.ligado = True

    def desliga(self):
        self.ligado = False
        self.velocidade = 0

    def get_velocidade(self):
        return self.velocidade

    def set_velocidade(self, velocidade):
        if velocidade >= 0:
            self.velocidade = velocidade
        else:
            self.velocidade = 0

Resposta

A classe MeioDeTransporte foi implementada com os atributos e métodos solicitados, garantindo que a velocidade nunca seja negativa.

Exercícios relacionados

Escreva as seguintes classes:
d) Uma classe que contenha o método main e instancie os seguintes objetos com os respectivos valores:
pessoa1 (Pessoa) pessoa2 pessoa3 pessoa4
nome: João (Funcionario) (Professor) (Professor)
sobrenome: Silva nome: Maria nome: José nome: Ana
sobrenome: sobrenome: sobrenome:
Medeiros Souza Oliveira
salário: 1750.00 salário: -500.00 salário: 1500.00
Escreva as seguintes classes:
b) Uma subclasse de Pessoa, chamada Funcionario. A classe Funcionario deve ter os atributos matricula (inteiro) e salário (double), com seus respectivos métodos get e set. O salário de um funcionário jamais poderá ser negativo. Todo funcionário recebe seu salário em duas parcelas, sendo na primeira parcela e 40% na segunda parcela. Assim, escreva os métodos getSalarioPrimeiraParcela que retorna o valor da primeira parcela do salário (60%) e getSalarioSegundaParcela que retorna o valor da segunda parcela do salário .
Escreva as seguintes classes:
c) Uma subclasse de Funcionario, chamada Professor. Todo professor recebe seu salário em uma única parcela. Assim, deve-se sobrecrever os métodos getSalarioPrimeiraParcela e getSalarioSegundaParcela. O método getSalarioPrimeiraParcela da classe Professor deve retornar o valor integral do salário do professor e o método getSalarioSegundaParcela do professor deve retornar o valor zero.
Implemente:
c) Uma classe que contenha o método main que permita ao usuário digitar os dados de 5 carros. Adicione os objetos em um array de carro. Por fim exiba os dados dos 5 carros.