diff --git "a/exercicios/para-casa/Exerc\303\255cios_s06_IgeaMartins/exCasa1_igeaMartins.py" "b/exercicios/para-casa/Exerc\303\255cios_s06_IgeaMartins/exCasa1_igeaMartins.py" new file mode 100644 index 0000000..a094955 --- /dev/null +++ "b/exercicios/para-casa/Exerc\303\255cios_s06_IgeaMartins/exCasa1_igeaMartins.py" @@ -0,0 +1,38 @@ +class veiculo: + def __init__(self, modelo, ano, preco): + self.modelo = str(modelo) + self.ano = int(ano) + self.preco = float(preco) + + def calculaImposto(self): + imp = 0.1 * self.preco + return imp + +class carro(veiculo): + def __init__(self, modelo, ano, preco, marca): + super().__init__(modelo, ano, preco) + self.marca = str(marca) + + def desconto(self): + preco = 0.95 * self.preco + return preco + +class moto(veiculo): + def __init__(self, modelo, ano, preco, cilindrada): + super().__init__(modelo, ano, preco) + self.cilindrada = int(cilindrada) + + def calculaImposto(self): + imp = 0.3 * self.preco + return imp + + +veiculoJoana = moto('abc-1', 2008, 1200.00, 500) + +print(veiculoJoana.calculaImposto()) + +veiculoDarla = carro('uno', 2006, 70000, 'fiat') + +print(veiculoDarla.desconto()) + + \ No newline at end of file diff --git "a/exercicios/para-casa/Exerc\303\255cios_s06_IgeaMartins/exExtra_igeaMartins.py" "b/exercicios/para-casa/Exerc\303\255cios_s06_IgeaMartins/exExtra_igeaMartins.py" new file mode 100644 index 0000000..e39dd65 --- /dev/null +++ "b/exercicios/para-casa/Exerc\303\255cios_s06_IgeaMartins/exExtra_igeaMartins.py" @@ -0,0 +1,35 @@ +class funcionario: + def __init__(self, nome): + self.nome = str(nome) + self.salario = 0 + + def calculaPagamento(self): + pass + +class temporario(funcionario): + def __init__(self, nome, salarioxhora, horas): + super().__init__(nome) + self.salarioxhora = float(salarioxhora) + self.horas = float(horas) + + def calculaPagamento(self): + salario = self.salarioxhora * self.horas + return salario + +class integral(funcionario): + def __init__(self, nome, salarioxmes): + super().__init__(nome) + self.salarioxmes = int(salarioxmes) + + def desconto(self): + salario = self.salarioxmes + return salario + + +f46528 = temporario('Joana', 6500, 150) +print(f46528.calculaPagamento()) + +f46529 = integral('Darla', 20000.00) +print(f46529.desconto()) + + \ No newline at end of file diff --git a/exercicios/para-sala/ex1sala.py b/exercicios/para-sala/ex1sala.py new file mode 100644 index 0000000..1b1b3fb --- /dev/null +++ b/exercicios/para-sala/ex1sala.py @@ -0,0 +1,39 @@ +class cachorro: + def __init__(self, nome, raca): # metodo construtor + self.nome = nome + self.raca = raca + + def andar(self): + print('estou andando', self.nome) + + def info(self): + print(self.nome, self.raca) + + +cachorro_lulu = cachorro('lulu', 'Harrier') + +cachorro_rex = cachorro('rex', 'Pinscher') + +# .... N objetos + +cachorro_lulu.info() + +cachorro_rex.info() + +cachorro_lulu.andar() + +print(f'nome do meu cachoro: {cachorro_lulu.nome}') + +cachorro_lulu.nome + +cachorro_rex.andar() + +b = 1 +a = 2 + +print(b.__class__) + +resp = b.__add__(a) + + +print(resp) \ No newline at end of file diff --git a/exercicios/para-sala/excontas.py b/exercicios/para-sala/excontas.py new file mode 100644 index 0000000..fedf954 --- /dev/null +++ b/exercicios/para-sala/excontas.py @@ -0,0 +1,24 @@ +class conta: + def __init__(self, numero, titular_conta, saldo): # metodo construtor + self.numero = numero + self.titular_conta = titular_conta + self.saldo = 0.0 + + def depositar(self, valor): + if valor > 0: + self.saldo =+ valor + print(f'Valor depositado de R${valor} realizado com sucesso.') + else: + print('O valor do depósito deve ser maior que zero.') + + def sacar(self, valor): + if valor > 0: + if self.saldo >= valor + self.saldo -= valor + print(f'Saque de R$ {valor} realizado com sucesso.') + else: + print(f'O valor do seu saldo deve ser maior que o valor de saque. Seu saldo é de {saldo}') + +conta = conta(202301, 'Daviny Letícia') + +conta.depositar(100) \ No newline at end of file diff --git a/exercicios/para-sala/exencaps.py b/exercicios/para-sala/exencaps.py new file mode 100644 index 0000000..bd7f7e9 --- /dev/null +++ b/exercicios/para-sala/exencaps.py @@ -0,0 +1,14 @@ +class pessoa: + def __init__(self, nome, idade): + self.__nome = nome #atributo privado + self.__idade = idade #atributo privado + + def get_nome(self): + return self.__nome + + def set_nome(self, novo_valor): + if len(novo_valor) > 0: + self.__nome = novo_valor + + def get_idade(self): + retun self.__idade \ No newline at end of file diff --git a/exercicios/para-sala/exretang.py b/exercicios/para-sala/exretang.py new file mode 100644 index 0000000..4f29977 --- /dev/null +++ b/exercicios/para-sala/exretang.py @@ -0,0 +1,22 @@ +#retangulo = retangulo(5.0, 3.0) +#perimetro = retangulo.calcular_perimetro() + +class Retangulo: + def __init__(self, largura, altura): # metodo construtor + self.largura = input(float(largura)) + self.altura = input(float(altura)) + + def calcular_area(self, area): + area = (self.largura * self.altura)/2 + if self.largura != 0 and self.altura != 0: + print(f'A área do triângulo informado é de {area}:.1f') + else: + print(f'Os valores informados são inválidos, tente novamente.') + + def calcular_perimetro(self, largura, perimetro): + if self.largura != 0 and self.altura != 0: + perimetro = (self.largura + self.altura)*2 + print(f'O perimetro do triângulo informado é de {perimetro}:.1f') + else: + print(f'Os valores informados são inválidos, tente novamente.') + diff --git a/exercicios/para-sala/produtos.py b/exercicios/para-sala/produtos.py new file mode 100644 index 0000000..c4ccac2 --- /dev/null +++ b/exercicios/para-sala/produtos.py @@ -0,0 +1,39 @@ +#Crie um sistema de gerenciamento de produtos em uma loja. +#Crie uma classe base chamada Produto com os seguintes atributos: + +#nome: o nome do produto +#preco: o preço do produto. +#A classe Produto deve ter um método chamado descricao() que retorna uma descrição completa do produto. + +#Crie duas subclasses concretas, ProdutoFisico e ProdutoDigital, que herdam da classe Produto. +#Adicione atributos específicos para cada tipo de produto, como peso e dimensões para produtos físicos e +#tamanho de arquivo para produtos digitais. + +#Implemente o método descricao() em cada uma das subclasses para incluir informações específicas do tipo de produto. + +#Crie instâncias de ProdutoFisico e ProdutoDigital, atribuindo valores adequados aos atributos de cada produto. +#Use o método descricao() para exibir informações detalhadas sobre cada produto. + +#Esses exercícios ajudarão você a praticar a criação de hierarquias de classes com herança em Python +#e a entender como compartilhar funcionalidades comuns e adicionar comportamentos específicos em subclasses. + +class produto: + def __init__(self, nome, preco): + self.nome = nome + self.preco = preco + +class prodFis(produto): + def __init__(self, nome, preco, volume): + super().__init__(self, nome, preco) + self.volume = volume + + def descricao(self): + return f'{super().descricao()}' + +class prodDig(produto): + def __init__(self, nome, preco, tamanho): + super().__init__(self, nome, preco) + self.volume = volume + + def descricao(self): + return f'{super().descricao()}' \ No newline at end of file diff --git a/exercicios/para-sala/veiculos.py b/exercicios/para-sala/veiculos.py new file mode 100644 index 0000000..c45d9ce --- /dev/null +++ b/exercicios/para-sala/veiculos.py @@ -0,0 +1,20 @@ +#Exercício 2: Animais +#Crie uma classe abstrata chamada Animal com métodos abstratos emitir_som() e mover(). +#Em seguida, crie subclasses concretas como Cachorro, Gato e Pato que herdam da classe Animal. +#Cada uma das subclasses deve implementar os métodos emitir_som() e mover() de acordo com o comportamento apropriado para cada animal. + +class Veiculo: + def __init__(self, marca, modelo, ano): + self.marca = marca + self.modelo = modelo + self.ano = ano + +class Carro(Veiculo): + def __init__(self, marca, modelo, ano, num_portas): + super().__init__(marca, modelo, ano): + self.num_portas = num_portas + + def descricao(self): + return super().descricao() + f',Numero de portas: {self.num_portas}' + +class Motos(Veiculo) \ No newline at end of file