class Livro
attr_reader :titulo, :ano, :preco
def initialize(titulo, ano, preco, possui_reimpressao)
@titulo = titulo
@ano = ano
@preco = calcula_preco(preco)
@possui_reimpressao = possui_reimpressao
end
def calcula_preco(preco)
if ano < 2000
preco *= 0.7
else
preco
end
end
def possui_reimpressao?
@possui_reimpressao
end
end
java = Livro.new("'Como o Java pode atrasar sua vida.'", 1997, 100.00, true)
agile = Livro.new("'Agile Web Development with Rails'", 2011, 70.55, true)
livros = [java, agile]
def lista(livros)
puts "-------- Lista dos livros --------"
livros.each do |livro|
puts "#{livro.titulo} - #{livro.ano} - #{livro.preco} - Reimpressões: #{livro.possui_reimpressao}"
end
puts
end
def newsletter livros
puts "-------- Newsletter de livros com desconto --------"
livros.each do |livro|
if livro.ano < 2000
puts "#{livro.titulo} - #{livro.ano} - #{livro.preco}"
end
end
puts
end
lista livros
newsletter livros