Material da aula 14.B! Veja mais informações sobre o curso e a lista completa das aulas em: http://cursoprogramacao.rafaelbiriba.com/
14.B. Programação orientada a objetos - Correção dos exercícios
Nessa aula eu faço a correção dos exercícios da aula de orientação a objetos, referente a classes, instâncias e métodos.
Não deixe de tentar resolver os exercícios da aula e investir algum tempo estudando mais sobre o assunto.
Vídeo da aula
Exercícios
Correção dos exercícios
1.
class Calculadora
def self.ao_quadrado(numero)
numero * numero
end
end
puts Calculadora.ao_quadrado(3)
2.
class CarroAzul
def cor
"Azul"
end
end
class CarroPreto
def cor
"Preto"
end
end
class CarroBranco
def cor
"Branco"
end
end
carro1 = CarroAzul.new
carro2 = CarroPreto.new
carro3 = CarroBranco.new
[carro1, carro2, carro3].each do |carro|
puts carro.cor
end
# Azul
# Preto
# Branco
3.
class Imc
def self.calcular(peso, altura, nome)
imc = peso / (altura * altura)
if imc > 30
puts "#{nome} está obeso(a)"
elsif imc > 25
puts "#{nome} está acima do peso(a)"
elsif imc > 18.5 and imc < 24.99
puts "#{nome} está normal"
elsif imc < 18.5
puts "#{nome} está abaixo do peso"
else
puts "Algo está errado"
end
end
end
Imc.calcular(200.2, 1.75, "Mario")
Imc.calcular(65.6, 1.65, "Roberta")
Imc.calcular(79.7, 1.77, "Pedro")
Imc.calcular(35.3, 1.60, "Ana")
4.
class Agenda
def self.dados
[{nome: "Rafael", telefone: "5566"}, {nome: "Rodolfo", telefone: "9988"}, {nome: "Romário", telefone: "2299"}, {nome: "Ana", telefone: "1634"}, {nome: "Rodrigo", telefone: "9533"}]
end
def self.procurar_numero(nome)
dados.each do |contato|
return contato[:telefone] if contato[:nome] == nome
end
end
end
end
puts Agenda.dados
puts Agenda.procurar_numero("Rodrigo")
puts Agenda.procurar_numero("Ana")