hola que tal,
estoy recién empezando a programar, así es que no tengo mucho conocimiento. tengo un ejercicio que me gustaría que me ayuden a optimizar el código sobre todo en la parte del calculo. Aqui les dejo el ejercicio y mi código. Gracias de antemano
=begin
2. Un cambista de Ocoña necesita saber cuántos billetes de 100, 50 y 20 dólares ,respectivamente,
necesita para realizar un cambio de dinero de un cliente que le ha pedido le cambie una cantidad en soles.
Realice un programa orientado a objetos tal que le permita atender a dicho cliente.
Considere registrar los datos del cliente: Nombre y dni además del monto que desea que le cambien.
Considerar el tipo de cambio = 3.12 soles/dólar.
=end
class CambioDolares
def initialize(nombre,dni,soles)
@nombre=nombre
@dni=dni
@soles=soles
end
def calcular
cambio=3.12
dolares=@soles*cambio
dolares2=dolares
billetes=[100,50,20]
billete1=dolares2/billetes[0]
dolares2=dolares2%billetes[0]
billete2=dolares2/billetes[1]
dolares2=dolares2%billetes[1]
billete3=dolares2/billetes[2]
"monto a cambiar:#{sprintf("%#.2f",@soles)} soles
Cambio: #{sprintf("%#.2f",dolares)} dolares
billetes de 100: #{billete1.to_i}\n billetes de 50: #{billete2.to_i}\n billetes de 20: #{billete3.to_i}"
end
def mostrar
"Cliente: #{@nombre}\n DNI: #{@dni}\n "
end
end
cliente1= CambioDolares.new("jose","51485681", 119)
puts cliente1.mostrar
puts cliente1.calcular