puts 2**(5%3) puts "Lenguajes\nde\nprogramación" a = 'ejemplo' puts "a\n#{a}\nb\nc" a = 'ejemplo' puts 'a\n#{a}\nb\nc' puts 'HolaMundo' * 5 palabra = "Lenguajes" puts palabra[-2,2] ejemplo1 = 1.to_s puts ejemplo1.class #String ejemplo2 = "10000".to_i puts ejemplo2.class #Numero => Fixnum [[:llave1, :llave2], ["valor1", "valor2"]].to_h visitar = ["Brasil", "Italia", "Egipto" ] visitar.push("Turquia") puts visitar visitar << "Japon" puts visitar array_1 = [1,2,3] array_2 = "456" puts array_1 + array_2.split('') array_3 = ['H','o','l','a'] puts array_3.join + " mundo" arreglo = [1, 2, 3] puts arreglo.map { |n| n * n } #=> [1, 4, 9] dict = {1 => "Lunes", "6" => "Sabado", 7 => " "} dict[7] = dict["6"] + " y Domingo" dict[3] = "Miercoles" # agregamos una nueva llave puts dict range = (46..65).to_a puts range range = (46...65).to_a puts range puts "cadena".object_id puts "cadena".object_id puts :cadena.object_id puts :cadena.object_id arreglo = [4,3,2,1] puts arreglo.sort puts arreglo #El arreglo no fue modificado e imprimira [4,3,2,1] puts arreglo.sort! puts arreglo #El arreglo fue modificado e imprimira [1, 2, 3, 4] i = 30**(2%4) if i < 10 puts "Es menor a 10" elsif i == 20 puts "Es 20" else puts "No es ninguna de las anteriores" end i = 0 while( i < 3 ) puts i i += 1 end k = 26 while( k > 10 ) if (k % 12 == 0) k-=1 puts "Ejecute un next" next elsif (k% 7 == 0 ) k-= 1 puts "Ejecute un break" break else k-=1 puts k end puts "Iteracion # "+ k.to_s end valor = 30 case valor when 30, (1..10) puts "1 - 10" + ", o puede ser 30" when 11..20 puts "11 - 20" end random_string = ["Hola ","2 ","soy ","el ","5"] for r in random_string print r end for i in (0..10) puts (i*7 + i) % 3 end "cadena".each_byte{|letra| puts letra.chr} "Esto\nes\nuna\nfrase".each_line{|linea| print linea} [1,2,3,4].each do |f| puts f end a = [1,2,3,4,5] b = a.collect{|x| 10*x} puts b mes = ["Enero","Febrero","Marzo"] los_mismos_meses = mes otros_meses = mes.clone otros_meses.push("Abril") puts "Meses" + mes.to_s puts "Mismos meses" + los_mismos_meses.to_s puts "Otros meses" + otros_meses.to_s def nombreDelMetodo #Comandos end def nombreDelMetodo(a,b) #Comandos end def operaciones(*args) # * implica número variable de argumentos num_args = args.size if args.size > 4 puts 'ERROR: Numero excesivo de argumentos' else case num_args when 2 puts "Multiplique 2 numeros: " + (args[0]*args[1]).to_s when 3 puts "Modulo: "+ args[2].to_s + " de la suma de 2 numeros: " +((args[0]+args[1]) % args[2]).to_s when 1 puts"Solo entro el numero: " + args[0].to_s end end end operaciones(9,24,8) var1 = 1 @var2 = 1 $var3 = 1 Var4 = 1 puts defined? var1 puts defined? Var4 # Definimos la clase Persona class Pais # Constructor de la clase def initialize(nombre,continente,idioma) # atributos @nombre = nombre @continente = continente @idioma = idioma end # método saludar def ubicacion puts "Hola! mi nombre es #{@nombre} y me encuentro en #{@continente}" end def lenguaje puts "En #{@nombre} se habla #{ @idioma} " end end colombia = Pais.new("Colombia","América", "Español") colombia.ubicacion colombia.lenguaje class Vehiculo def transportar puts "Me movilizo" end end class Avion "John Smith" puts person.age # => 70 puts person.address # => nil class Producto attr_accessor :nombre attr_accessor :caract attr_accessor :valor attr_accessor :fabricante def initialize(nombre,caract,valor, fabricante) @nombre= nombre @caract = caract @valor = valor @fabricante = fabricante end def descripcion print "Nombre: #{@nombre}" print "\nCaracteristicas:\n" @caract.each do |c| puts "\t" + c.to_s end "Valor: $#{@valor}\nFabricante: #{@fabricante}" .each_line{|l| print l} end end p = Producto.new("Producto1",["Grande","Pesado","Elegante"],2000,"X") p.descripcion class Electrodomestico1 and num_args <4 b = 0 args.each do |a| b+= a.valor end return b * 0.70 else b = 0 args.each do |a| b+= a.valor end return b * 0.50 end end end p = Producto.new("Producto1",["Grande","Pesado","Elegante"],2000,"X") p1 = Producto.new("Producto2",["Grande","Pesado","Elegante"],3000,"X") p2 = Producto.new("Producto3",["Grande","Pesado","Elegante"],4000,"X") p3= Producto.new("Producto4",["Grande","Pesado","Elegante"],5000,"X") checkout = Pago.new puts checkout.descuento(p1,p2,p3,p)