Python E03
Python E03
1. Crie uma classe que modele um quadrado, com um atributo lado e os métodos: mudar valor do
lado, retornar valor do lado e calcular área.
Solução:
class Square(object):
def get_side(self):
return [Link]
def get_area(self):
return [Link] ** 2
square = Square(2)
square.set_side(3)
print square.get_area()
2. Crie uma classe derivada de lista com um método retorne os elementos da lista sem repetição.
Solução:
class List(list):
def unique(self):
"""
Retorna a lista sem repetições.
"""
res = []
for item in self:
if item not in res:
[Link](item)
return res
# Teste
l = List([1, 1, 2, 2, 2, 3, 3])
print [Link]()
Solução:
class Carro(object):
tanque = 0
def gasolina(self):
return [Link]
carro = Carro(consumo=5)
[Link](litros=220)
[Link](km=20)
print [Link]()
• Com coordenadas x, y e z;
• Que suporte soma, subtração, produto escalar, produto vetorial;
• Que calcule o módulo (valor absoluto) do vetor.
Solução:
import math
class Vetor(object):
def __init__(self, x, y, z):
self.x = float(x)
self.y = float(y)
self.z = float(z)
def __repr__(self):
return 'Vetor(x=%.1f, y=%.1f, z=%.1f)' % (self.x, self.y, self.z)
def __abs__(self):
tmp = self.x ** 2 + self.y ** 2 + self.z ** 2
return [Link](tmp)
vetor = Vetor(1, 2, 3)
print abs(vetor)
print Vetor(4.5, 5, 6) + vetor
print Vetor(4.5, 5, 6) - vetor
print Vetor(4.5, 5, 6) * vetor
print Vetor(4.5, 5, 6) * 5