6 nov. 2018

Programa - Pato

Este es un ejemplo muy sencillo de lo que es una clase.
En este caso, creo la clase Pato (el molde para los objetos Pato), le defino los métodos (acciones) que los objetos que se creen a partir de él podrán hacer que son cuac, soy, come y gusta y creo un objeto llamado Oscar y pido que me diga lo que hace con cada acción que le he definido.
 
class Pato
  def cuac
    puts 'cuac, cuac'
  end
  def soy
    puts 'Soy un Pato'
  end
  def come
  puts 'como grano y gusanos'
  end
  def gusta
  puts 'Me gusta mucho nadar'
  end
end
 
Oscar=Pato.new
puts Oscar.soy
puts Oscar.cuac
puts Oscar.come
puts Oscar.gusta
 

 ---------------
Otro ejemplo

class Pato
def hablar
puts "Cuac cuac"
end
def nadar
puts "Estoy nadando"
end
def gustar
puts "me gusta ser un pato"
end
def sumar
puts "tesumaré dos números enteros"
puts "escribe el primer número: "
uno=gets.chomp
puts "Ahora el segundo número: "
dos=gets.chomp
tres=uno.to_i+dos.to_i
puts "La suma es = #{tres}"
end
end

Pepe = Pato.new
puts Pepe.hablar
puts Pepe.nadar
puts Pepe.gustar
----------------------
Ahora un poco más complicado:

def initialize (genero, clase)
@genero = genero
@clase = clase
end
def genero
genero = @genero
end
def clase
clase = @clase
end

def hablar
hablar = "Cuac cuac"
end
def nadar
nadar = "Estoy nadando"
end
def gustar
gustar = "me gusta ser un pato"
end
def sumar
puts "tesumaré dos números enteros"
puts "escribe el primer número: "
uno=gets.chomp
puts "Ahora el segundo número: "
dos=gets.chomp
tres=uno.to_i+dos.to_i
puts "La suma es = #{tres}"
end

end

Pepe = Pato.new("Ánade común", "pato de rio")
puts "Soy un #{Pepe.genero}, es decir que soy un #{Pepe.clase}."
puts Pepe.hablar
puts Pepe.nadar
puts Pepe.gustar+ " de río"
------------------------------------------------