Created by Erik Martinez
over 5 years ago
|
||
Los arrays son usados extensamente por los programadores para contener listas de datos en la memoria, por ejemplo, los datos almacenados en un disco suelen leerse y ponerse dentro de un array con el objetivo de facilitar la manipulación de dichos datos, ya que los datos en memoria pueden ser modificados, clasificados, marcados para su eliminacion, etc. para luego ser reescritos al disco. Otro ejemplo podría ser el de un menú de opciones que se desplegarán dentro de una ventana para que el usuario pueda elegir una de éstas, en tales casos y cuando las opciones son numerosas, solamente se ponen unas cuantas de ellas dentro de la ventana pero se le da al usuario la oportunidad de poder subir y bajar a su antojo para ver el resto de opciones que, aunque no se vean en la ventana, forman parte del menú o array de opciones. Array: Un array es un conjunto de datos del mismo tipo ordenados de forma líneal uno después de otro. Los componentes de un array se han de referenciar por medio del nombre del array y un índice de desplazamiento para indicar el componente deseado.
Subíndice: El valor de cada elemento de un array (, vector o matriz) está asignado a un nombre de la variable y a un subíndice. El primer elemento del array tiene el subíndice 0, el subíndice 1 es el elemento que sigue al elemento 0 en la horizontal; y así hasta el final de la primera fila y progresivamente para las siguientes filas. ej.: El siguiente array A0,0A1,0 A0,1A1,1 se salva como A0,0,A1,0,A0,1,A1,1. IDL permite llamar a uno o más elementos del array utilizando una lista de subíndices. La sintaxis de una referencia de subíndice es: nombre_de_variable(Lista_de_subíndices) o expresión(Lista_de_subíndices) ej.: array1=[3,2,6,3,8,3,8,4] print,array1(2) da 6 array2=[[1,2],[-1,5]] print,array2(0,1) da -1 Para llamar a más de un elemento de un array, hay que utilizar una lista de números enteros que se pueden guardar en otro array. ej.: array3=findgen(21)+1 sub=[0,2,4,6] print,array3(sub) da 1 3 5 7 Se puede llamar también a un rango de subíndices; la secuencia de llamada es: Array(sb1:sb2) sb1 es el principio del subíndice y sb2 el ultimo. Se usa ''*'' para llamar todos los elementos o los que son después sb1. ej.: print,array3(14:16) da 14 15 16 print,array3(19:*) da 19 20 21 array4=findgen(5,6) print,array4(1:2,3:5)
eclarar y crear un array Para declarar un array se escribe tipo_de_dato[] nombre_del_array; Para declarar un array de enteros escribimos int[] numeros; Para crear un array de 4 número enteros escribimos numeros=new int[4]; La declaración y la creación del array se puede hacer en una misma línea. int[] numeros =new int[4];
Debido a la importancia de los arrays, casi todos los lenguajes deprogramación de alto nivel proporcionan medios eficaces para almacenar y acceder a los elementos de los arrays, de modo que el programador no tenga que preocuparse sobre los detalles específicos de almacenamiento.Sin embargo,el almacenamiento enlacomputadora está dispuestofundamentalmente ensecuencia contigua, demodo quecada acceso a unamatriz o tabla lamáquina deberealizar latarea deconvertir la posición dentro del array en una posición perteneciente a unalínea .
"tipo-almacenamiento" se refiere al tipo de almacenamiento del array "tipo-dato" es el tipo de dato "array" es el nombre del array "expresion" una expresión entera positiva que indica el número de elementos del array. El tipo-almacenamiento es opcional; los valores por defecto son automáticos para un array definidos dentro de una función o bloque, y externos para arrays definidos fuera de una función. Los arrays automáticos a diferencia de las variables automáticas no pueden ser inicializados. Sin embargo las definiciones de los arrays estáticos y externos pueden incluir, si se desea, la asignación de los valores iniciales. Los valores iniciales deben aparecer en el orden en que serán asignados a los elementos individuales del array, encerrados entre llaves y separados por comas. La forma general es: tipo-almacenamiento tipo-dato array[expresión] = { valor1, valor2,..., valorn}; donde: "valor1" se refiere al valor del primer elemento del array "valor2" al segundo elemento , y así sucesivamente. La presencia de la "expresión", que indica el número de elementos del array, es opcional cuando los valores iniciales están presentes.
Inicializar un Array Para dar valores a todos los elementos del array no es necesario hacerlo uno por uno, escribiendo cada índice del array y dándole un valor. Existe la forma de inicializar el array en el mismo momento en el que se crea. Si tenemos el array tipo int de índice 10 del ejemplo podemos inicializarlo de la siguiente manera: int notas[10] = {9, 2, 6, 7, 4, 5, 5, 7, 8, 1}; Introducimos sus valores entre { ,,, } y cada valor separado por una ",". De esta forma le damos todos los valores directamente. Y ya si queremos acceder y mostrar el contenido de algún índice en concreto se procede como ya hemos visto en la lección anterior. En este ejemplo se inicializa un array y se muestran algunos de los valores que contiene: Concretamente se muestran los valores del índice 1, 4 y 8. Recordad que el array empieza a contar con el índice 0. Es decir, que notas[1] nos mostraría el segundo valor del array (ya que contamos desde 0, de manera que 0 sería el primer valor, y el 1 sería su segundo valor).
Want to create your own Notes for free with GoConqr? Learn more.