HISTORIA El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien empezó a trabajar en Ruby el 24 de febrero de 1993, y lo presentó al público en el.

Slides:



Advertisements
Presentaciones similares
Unidad 6 Métodos de Ordenamiento Internos
Advertisements

Estructuras de control
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Ruby Rodrigo Cornejo Mejías Jonathan Cea Chávez Marcelo Gómez Gonzales
Universidad de Tarapacá Fundamentos Lenguaje y Programación Rodrigo Cornejo Mejías Jonathan Cea Chávez Marcelo Gómez Gonzales.
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Conversión cadena a número
Feliz Programación ;) Juan Álvarez Álvarez Luis Serrano Arjona Francisco Javier Trujillo Mata.
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings
Ficheros: Ruby Estructura de Datos II.
ESTRUCTURAS DE DATOS “Conceptualización de estructuras de datos” Por: Eduardo Robayo.
Ciclos en Visual Basic Yaimira Pérez. Los ciclos son estructuras de repetición que ejecutan una o varias instrucciones durante la cantidad de veces que.
Campos simples La sintaxis para definir campos en el segmento de datos depende en parte del ensamblador usado, si bien casi siempre guardan.
Applications Development I 6.1 Foro Tomas Anzalotta Alvarado.
1 Clase 23: técnicas (3/4) orden recursivo iic1102 – introducción a la programación.
Ciclos disponibles en Visual Basic Nury Capera Tovar.
Ruby: “Orientación a Objetos” y algo más.... Ruby: “Orientación a Objetos” y algo más... 7mas Jornadas Regionales de Software Libre Agosto de 2007, Córdoba,
CICLOS CONDICIONALES DINÁMICOS Y CICLOS CONDICIONALES FIJOS Aixa Sosa Colón NE: Programación 2250 – 3240 ONL Profesora. Rebecca Acevedo Rivera.
Ciclos Condicionales Joel R. Almodóvar Rivera Tarea 6-1 PROG2310L.
Ciclos en Visual Basic Elena Lopez National University College Online Agosto 3, 2010.
RubyNote ARCHIVOS EN RUBY HECHO POR: FRANCISCO ALVAREZ AGUILA.
¿Que es PHP? PHP Hypertext Preprocessor Y solo porque me quiero hacer el profesor cool y meter un chiste: PHP también significa: Para Hacer Páginas.
1 Ordenación, Clasificación Introducción Algoritmos Complejidad.
SERIES Y SUMATORIAS.
Estructuras de Control en Visual Basic.net
Operadores Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.
Programación orientada a objetos
Introducción a la Programación Multimedial
LOS DIFERENTES LENGUAJES DE PROGRAMACION PARA LA WEB
Ingeniería en Sistemas
El celular en los parciales SI o NO
MANEJO DE ARRELOGS EN C Clase 8: Arreglos.
Lenguaje C en pocas palabras
Estructuras de Control en Visual Basic.net
Programación orientada a objetos
PSEUDOCÓDIGO Prof. Rafael Mourglia.
Funciones y Clases Amigas (Friend)‏ Miembros Estáticos (Static)
IPOO 2 cuatrimestre 2017 Departamento de Ciencias e Ingeniería
Clase7: Objetos y Clases
Funciones y Clases Amigas (Friend)‏ Miembros Estáticos (Static)
Lenguaje de Programación C en pocas palabras
TUTORIAL PSeint.
Listas Dinámicas.
Fundamentos del lenguaje de programación Condicionales, ciclos, Métodos, enumeraciones Escuela Técnica Superior Kinal Instructor Edwin Tumax.
Programación Orientada Objetos
Unidad 3. Introducción a la programación
Plantillas (Templates)‏
Estructuras de control en PHP
Lenguaje de Programación
ARREGLOS BIDIMENSIONALES MATRICES Son un espacio de almacenamiento continuo, que contiene una serie de elementos del mismo tipo de datos. Desde el punto.
ESTRUCTURAS DE CONTROL EN VISUAL BASIC.NET Prof.: Rafael Mourglia.
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Funciones y Clases Amigas (Friend)‏ Miembros Estáticos (Static)
Fundamentos de Informática Especialidad de Electrónica –
Javascript.
PROGRAMACIÓN (2).
Arreglos en Java.
CICLOS EN JAVA FOR, WHILE, DO WHILE Un ciclo en Java o bucle en Java (como prefieras llamarlo) permite repetir una o varias instrucciones cuantas veces.
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
Informática Ingeniería en Electrónica y Automática Industrial
COLAS O LINEA DE ESPERA EN C# SHARP. ¿QUE ES UNA COLA O LINEA DE ESPERA?  Es una estructura de datos que almacena elemento en una lista y permite acceder.
Ordenamiento Ordenar una estructura de datos consiste en reacomodar sus elementos de acuerdo a algún criterio. Por ejemplo, los mensajes pueden ordenarse.
Unidad 2: Programación 2. Programación.
LOGICA INTERACTIVA USO DEL HACER PARA Engloba un grupo de instrucciones HACER PARA [I] = 1 a 10 Es la única de las repetitivas que no depende de una expresion.
Funciones y Clases Amigas (Friend)‏ Miembros Estáticos (Static)
Funciones y Clases Amigas (Friend)‏ Miembros Estáticos (Static)
ALGORITMO DE ORDENAMIENTO POR BURBUJA. El método de la burbuja es uno de los mas simples, es tan fácil como comparar todos los elementos de una lista.
ORDENAMIENTO POR EL MÉTODO DEL SHAKER SORT (SACUDIDA)
Transcripción de la presentación:

HISTORIA El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien empezó a trabajar en Ruby el 24 de febrero de 1993, y lo presentó al público en el año 1995. En el círculo de amigos de Matsumoto se le puso el nombre de "Ruby" (en español rubí) como broma aludiendo al lenguaje de programación "Perl" (perla).

¿QUÉ ES RUBY? Ruby es un lenguaje de programación interpretado, reflexivo y orientado a objetos. Combina una sintaxis inspirada en Python y Perl con características de programación orientada a objetos similares a Smalltalk. Ruby es un lenguaje de programación interpretado en una sola pasada y su implementación oficial es distribuida bajo una licencia de software libre.

INDICADOR DE LA POPULARIDAD DE LOS LENGUAJES DE PROGRAMACIÓN

SINTAXIS La sintaxis de Ruby es similar a la de Perl o Python. Una de las diferencias entre Ruby y Python y Perl es que Ruby mantiene todas sus variables de instancia privadas dentro de las clases y solo la expone a través de métodos de acceso (attr_writer, attr_reader, etc). A diferencia de los métodos "getter" y "setter" de otros lenguajes como C++ o Java, los métodos de acceso en Ruby pueden ser escritos con una sola línea de código.

ARRAYS Un array (o lista) es un conjunto ordenado: cada posición en la lista es una variable que podemos leer y/o escribir. # Arrays (o vectores) # array vacío vec1 = [] # Los índices empiezan desde el cero (0,1,2,...) nombres = ['Satish', 'Talim', 'Ruby', 'Java'] puts nombres[0] puts nombres[1] puts nombres[2] puts nombres[3] # si el elemento no existe, se devuelve nil puts nombres[4] # pero podemos añadir a posterior ir más elementos nombres[3] = 'Python' nombres[4] = 'Rails'

ARRAYS Un array puede ser un conjunto de elementos distintos. =begin un array cuyos elementos apuntan a otros tres objetos: un decimal, un string y un array =end sabor = 'mango' vec4 = [80.5, sabor, [true, false]] puts vec4[2]

ARRAYS Usando %w. nombres1 = [ 'ann', 'richard', 'william', 'susan', 'pat' ] puts nombres1[0] # ann puts nombres1[3] # susan # esto es más sencillo y más rápido: nombres2 = %w{ ann richard william susan pat } puts nombres2[0] # ann puts nombres2[3] # susan

Por lo tanto el método each nos permite hacer una cosa (la que sea) con cada objeto del array. En el ejemplo, fuimos elemento por elemento del array sin usar los índices. Hay que destacar: **Los variable entre los "postes" se refiere a cada ítem del array a medida que avanzamos en el loop. Se puede usar cualquier nombre, pero es mejor dotarlo de cierto significado. **El do…end identifica el bloque de código que se ejecutará con cada elemento del array. Los bloques son usados intensivamente en Ruby, y se tratarán en profundidad más adelante. Es posibles sustiturlos por las llaves de inicio y fin. ARRAYS Método each: extrae cada elemento del array dentro de la variable que se le especifique (que irá entra dos barras | |), que se usará en bloque do…end. ciudades = %w{ Pune Mumbai Bangalore } ciudades.each do |ciudad| puts '¡Me gusta ' + ciudad + '!' puts '¿A ti no?' end #El método {{**delete**}} borra un elemento ciudades.delete('Mumbai') puts '¡Me gustaba '+ciudad+'!' puts '¿A ti ya no?'

ARRAYS Metodo Burbuja # El método swap sirve para intercambiar de posición los elementos de un arreglo.class Array def swap(a,b) self[a], self[b] = self[b], self[a] end end a = [99,86,48,16,82,50,25,62,8,45] #Será ordenado mediante bubble sortb = b =[99,86,48,16,82,50,25,62,8,45] #Al estilo Ruby

ARRAYS begin intercambio = false (a.count-1).times do |i| if a[i] > a[i+1] # Si se cumple la condición, entonces intercambiamos. a.swap(i,i+1) intercambio = true end next end end while intercambio == true # Este ciclo se ejecuta mientras haga intercambios.

ARRAYS # Arreglo ordenado con bubble sort. # join lo uso para mostrar el arreglo separado por comas. puts "a = " << a.join(" , ") # Ahora la forma ruby. puts "b = " << b.sort.join(" , ") gets()

ARRAYS Método Quick Sort a = [99,86,48,16,82,50,25,62,8,45] #Será ordenado mediante quick sort. class Array def quick_sort # el métoodo quick_sort será el encargado de ordenar recursivamente el arreglo. return self if length <= 1 # si el tamaño del arreglo es menor o igual a 1 no hay nada que ordenar. pivote = self[length / 2] # La elección del pivote en este caso, es el elemento al centro del arreglo.

ARRAYS find_all { |i| i < pivote }.quick_sort + # se ordenan recursivamente todos los elementos más pequeños que el pivote find_all { |i| i == pivote } + # más los elementos que son igual que el pivote find_all { |i| i > pivote}.quick_sort # y se ordenan recursivamente los elementos más grandes que el pivote end endputs "a = " << a.quick_sort.join(" , ") gets()