“Conocimientos Programación>Rubí Programación

Cómo crear una matriz multidimensional en Ruby

2013/11/29
Aunque Rubí no proporciona apoyo explícito a las matrices multidimensionales , puede implementar uno usted mismo si tiene un conocimiento básico del idioma . Usted debe , en esencia, crear una " matriz de matrices " en la que cada elemento de la matriz contiene otra matriz. Para crear una matriz multidimensional como en Ruby , puede escribir un método utilizado para generar las matrices de matrices por lo que el código no tiene que repetirse. Instrucciones
crear una matriz multidimensional en Ruby
1

Escribe el esqueleto del método. Este método se llevará a una serie de argumentos dimensión y devolver una matriz multidimensional vacío de esas dimensiones . Por ejemplo , para una matriz de 10x10 , llamar a este método mda (10,10 ) . Def mda ( ancho, alto ) end
2

Crear una matriz de elementos de ancho

3

Crear una matriz de elementos de altura para cada elemento de la matriz . Esto hace que la " matriz de matrices " que se utilizarán como una matriz de dos dimensiones . Para crear matrices vacías de una longitud específica , utilice el constructor Array.new con la longitud como argumento. Inicialmente, todos los valores de la matriz serán nulas.
4

Usa el mapa ! método así . El mapa! método itera cada elemento de una matriz , se ejecuta un bloque para cada uno y asigna el resultado del bloque para el elemento de matriz . El mismo resultado se puede lograr utilizando un bucle , pero el mapa ! método es más conciso : def mda ( ancho, alto) a = Array.new (ancho ) a.map ! { Array.new (altura ) } devuelve AEND
5

Utilice esta matriz con el (corchetes [ ] ) operador de subíndice. Por ejemplo , si usted tuviera una matriz de 10x10 llamado " a" y quería que el elemento de 7,3, que diría un [ 7 ] [ 3 ] : a = mda (10,10 ) # Llenar la matriz con valuesa [ 7 ] [ ,"5 ] = " una cadena " a [ 2 ] [ 9 ] = 23 # Recuperar valuesputs a [ 7 ] [ 5 ] pone a [2 ] [ 9 ]
6

tomar ventaja de la capacidad de método de "cadena" llama en Ruby. Por ejemplo , el método Array.new devuelve una matriz . Usted puede encadenar otra llamada al método en que para llamar a un método en la matriz devuelta . Puesto que usted es el encadenamiento de los métodos , y no utilizar una sentencia return , que no es necesario el nombre de la variable sea: def mda ( ancho, alto) Array.new (ancho ) mapa { Array.new (altura ) } end . !

Página siguiente: No
Rubí Programación
Cómo introducir un archivo en Ruby
Cómo reemplazar una clase de Ruby
Cómo encontrar si existe una clase en Ruby
Cómo escribir un programa para modelar una calculadora simple
Cómo crear una matriz en Ruby
Cómo quitar un elemento de una matriz vacía en Ruby
Cómo utilizar formularios ocultos Con Rails
Cómo reinstalar RubyGems
Conocimientos Informáticos © http://www.ordenador.online