1 1. ARREGLOS UNIDIMENSIONALES Un arreglo unidimensional o
vector es un conjunto finito y ordenado de elementos homogneos. La
propiedad ordenado se refiere a que los elementos primer, segundo,
tercero y n- esimo pueden ser identificados. Adems los elementos de
un arreglo son homogneos, es decir todos son del mismo tipo de
datos. La forma general para definir un arreglo de slo una dimensin
es la siguiente:
tipo_de_dato nombre_variable[tamao]
tipo_de_dato se refiere al tipo de dato de cada elemento del
arreglo. tamao es la cantidad de elementos agrupados en la misma
variable. Ejemplo: int vector [10] Entero tipo de dato vector
nombre de la variable que representa a todo el arreglo 10 tamao del
arreglo
0 1 2 3 4 5 6 7 8 9
vector 13 24 35 12 78 53 71 29 30 83
Ejemplo x[5] = 53 x[9] = 83 Recuerde que el arreglo almacena
desde la casilla 0. Por tanto, en un arreglo de 10 casillas, stas
estn numeradas del 0 al 9
1.1 Forma de acceso a un elemento especfico del arreglo Para
accesar a uno de los elementos del arreglo en particular, basta con
invocar el nombre del arreglo y especificar entre corchetes el
nmero de casilla que ocupa el elemento en el arreglo. Por ejemplo,
si queremos accesar al cuarto elemento de un arreglo de 10, se
invocara de la siguiente manera: nombre_variable[3] el caso
anterior vector[3]=12. Cabe notar que solo el vector global tienen
el nombre vector y los elementos de este se referencian mediante el
subndice correspondiente. As se usa un identificador global de la
estructura pero se puede acceder a cada elemento
independientemente. Por ejemplo para registrar los datos de
temperatura en grados centgrados de las 24 horas del da se puede
definir el vector TEMPERATURA de 24 elementos de tipo real ya que
la temperatura no siempre se representa en trminos enteros. El
valor mnimo permitido de un vector se denomina lmite inferior y el
valor mximo permitido se denomina lmite superior. En el ejemplo de
TEMPERATURA, el lmite inferior es 0 y el lmite superior es 23.
2
TEMPERATURA[0] TEMPERATURA[1] TEMPERATURA[2] TEMPERATURA[3]
TEMPERATURA[4] TEMPERATURA[5] TEMPERATURA[6] TEMPERATURA[23]
7 7,5 12 13 13,5 20 15,4 10,3
La forma de almacenamiento de los vectores en memoria es
adyacente. Por ejemplo, el vector anterior de 10 elementos se
representa grficamente por 10 posiciones de memoria sucesivas.
MEMORIA TEMPERATURA[0] Direccin x TEMPERATURA[1] Direccin x+1
TEMPERATURA[2] Direccin x+2 TEMPERATURA[3] Direccin x+3
TEMPERATURA[23] Direccin x+23Algunas instrucciones que son vlidas
para este vector se representan en la siguiente tabla
Acciones Escribir (TEMPERATURA[0]) TEMPERATURA[4]40 SUMA =
TEMPERATURA[1]+ EMPERATURA[3] SUMA = SUMA + TEMPERATURA[4]
Resultados visualiza el valor de TEMPERATURA[0] o 7 Almacena el
valor 40 en TEMPERATURA[4] Almacena en suma TEMPERATURA[1]+
EMPERATURA[3] o es decir 20,5 Incrementa la variable suma con el
valor de TEMPERATURA[4] TEMPERATURA[5]= EMPERATURA[5] Suma 4,5 a
TEMPERATURA[5], + 4,5 TEMPERATURA[5] tendr como valor 24,5
TEMPERATURA[6]=EMPERATURA[1] Almacena la suma de TEMPERATURA[1] +
TEMPERATURA[2] EMPERATURA[2] en TEMPERATURA [6] el nuevo valor de
TEMPERATURA[6] ser 14,5Adems cabe mencionar la importancia que debe
tener la utilizacin de los ndices y es necesario, mostrar cierta
notacin. Supongamos un vector V de 6 elementos.
V[0] V[1] V[2] V[3] V[4] V[5]
7 -5 12 13 8 20
3
Nota Los subndices de un vector pueden ser enteros, variables o
expresionesenteras. As por ejemplo si: i=3 V[i+1] V[i+2] V[i-2]
V[i*1] representa el elemento V[4] de valor 8 representa el
elemento V[5] de valor 20 representa el elemento V[1] de valor 5
representa el elemento V[3] de valor 13
1.2 Operaciones Con VectoresLas operaciones que se pueden
realizar con vectores durante el proceso de resolucin de un
problema o alguna actividad son: Asignacin Lectura / escritura
Ordenacin Bsqueda Actualizar (aadir, borrar, insertar) 1.2.1
Asignacin 100 Para la introduccin de valores 1 todos los 3elementos
de un vector, la mejor opcin es utilizando a 2 4 5 estructuras
repetitivas como para (for ), mientras ( while) y repetir hasta
(repeat until). 1.2.2 Lectura / escritura de datos Las
instrucciones simples de lectura y escritura se representan
como:
La instruccin para realizar la operacin de asignacin en vectores
es la siguiente: V[i]expresin vector V asigna el valor expresin al
elemento i del
I 0, 9,1
Lectura Primera FormaLeer Num
V[I] Num
4
Estas instrucciones permitirn asignar (cargar) al vector V, diez
elementos (nmeros) cualesquiera
Segunda FormaI 0, 9,1
Estas instrucciones realizan los mismo es decir permite asignar
(cargar) al vector V, diez elementos (nmeros) cualesquiera. Podras
indicar cul es la variacin?
Leer V[I]
a) EscrituraI 0, 9,1 Mostrar V[I] Estas instrucciones permitirn
mostrar (descargar) del vector V, diez elementos (nmeros)
cualesquiera
Nota: Si te es complicado recordar que debes empezar en 0,
puedes empezardesde 1 e ir hasta 10, luego el bucle quedara de la
siguiente manera:I 1, 10, 1
Y obviamente todo lo dems que corresponde.
Debes tener presente que, el incremento del bucle For no
necesariamente es de 1 en 1, puedes definir el incremento de
acuerdo a tus necesidades, aumentando o disminuyendo.
5
Ejemplos
0 100 5
1
2 20
3 230
4 487
1. El siguiente ejemplo permite mostrar los elementos que estn
almacenados en posiciones pares. Solucin 1 Inicio Solucin 2
Inicio
Leer N
Leer N
I 0, N-1,1
I 0, N-1,1
Leer V[I]
Leer V[I]
I 0, N-1,2 Mostrar V[I]
I 0, N-1,1
I mod 2=0 Mostrar V[I]
Fin
Fin
6
Ambos diagramas de flujo hacen posible mostrar los elementos de
las pociones pares del vector V, la diferencia est en que la
solucin 1, el segundo bucle (For), la variable I recorre las
posiciones pares, con un incremento de 2, la solucin 2 recorre
todas las posiciones pero solo muestra los elementos de las
posiciones pares, observa que dentro del segundo bucle de la
solucin 2 existe una condicin que permite verificar qu posicin se
esta visitando, es decir solo cuando I tome los valores 0,2,4,6, se
imprimir el contenido del vector en esas posiciones. Realiza los
siguientes ejercicios de ambas formas 1. Dado el vector M de
dimensin N se pide mostrar los elementos que estas almacenados en
las posiciones mltiplos de 3 empezando desde la posicin 3 2. Dado
el vector Q de dimensin N se pide mostrar los elementos que estas
almacenados en las posiciones mltiplos de 4 empezando desde la
posicin 4 3. Dado el vector Z de dimensin N se pide mostrar los
elementos que estas almacenados en las posiciones mltiplos de 5
empezando desde la posicin 5
Voy a ayudarte en la solucin del primer ejercicio, dispondr los
diagramas de flujo, de dos tipos de soluciones, te toca colocar las
instrucciones. Te aconsejo realizar las respectivas pruebas de
escritorio.
Inicio
Inicio
Fin
Fin
7
No olvides que! El vector tiene un nombre 12 Posicin 0 (nmeros
enteros y positivos)
A (por ejemplo)34 1 56 66 77 77 88 2 3 4 5 6 44 66 7 8 11 22 44
9 10 11
Elementos Continuemos con otros ejemplos 2. Se pide sumar los
elementos pares y los elementos impares de un vector Z de dimensin
N 12 0 61 1 45 2 100 3 66 4 101 5 47 6 ... 500 N
Z
Ahora hablamos de Inicio elementos, es decir debemos sumar los
elementos pares del anterior los vector es decir 12+100+..+500 y la
suma de los elementos impares es 61+45+101+47+ SolucinLeer N
SPAR0 SIMPAR0
I0,N-1,1
Z[I]
K0,N-1,1
Z[K] mod 2 = 0
SIMPARSIMPAR+Z[K]
SPARSPAR+Z[K]
Aqu estamos preguntando, si los elementos son pares, si es as
realizamos la suma acumulando en la variable SPAR caso contrario
realizamos las suma en la variable SIMPAR. Es este caso K es el
subndice que permite recorrer todas las posiciones del vector, lo
que permitir obtener cada uno de los elementos
SIMPAR SPAR
Fin
8
Realiza los siguientes ejercicios 1. Dado el vector M de
dimensin N se pide sumar los elementos mltiplos de 3 2. Dado el
vector Q de dimensin N se pide sumar los elementos mltiplos de 10
3. Dado el vector Z de dimensin N se pide sumar los elementos
positivos y negativos
Antes de que pasemos a realizar otros ejemplos quiero formularte
algo, te acuerdas que dije en pginas anteriores que para manipular
datos en un vector es necesario utilizar bucles, pues ahora
utilizaremos el bucle WHILE para leer y escribir elementos en un
vector.Inicio
Leer N
I0 I