Vista previa del material en texto
CLASE Array Introducción ARRAY o (vectores) Un array, es un tipo de dato estructurado que permite almacenar un conjunto de datos homogeneo, es decir, todos ellos del mismo tipo y relacionados. Cada uno de los elementos que componen un vector pueden ser de tipo simple como caracteres, entero o real, o de tipo compuesto Introducción ARRAY o (vectores) Unidimensional A los datos almacenados en un array se les denomina elementos; al número de elementos de un array se les denomina tamaño o rango del vector. Declaración VAR vec_numero : ARRAY [1..100] de ENTERO vec_real : ARRAY [1..50] de REAL Representación Grafica 10 14 -1 31 50 -8 66 33 45 188 vec_numero 1 2 3 4 5 6 7 8 9 10 Índice o Puntero Contenido vec_numero[1] 10 vec_numero[5] 50 vec_numero[9] 45 Asignación de valores (elementos) o datos a cada posición del array o vector VAR num : array[1..100] de Entero apellido : array [1..50] de string sueldo : array [1..70] de real Asignación directa num[1]:= 10 num[4]:= 5005 num[88]:= -1 apellido[2]:= “Rodriguez” apellido[10]:=“Krujoski” sueldo[20]:= 3500.50 sueldo[15]:= 45500.90 Asignación de valores a cada posición del array o vector VAR num : array[1..100] de Entero apellido : array [1..50] de string sueldo : array [1..70] de real i: entero Asignación desde teclado i:=1 MIENTRAS i<= 100 HACER Leer( num[i] ) i:= i + 1 i:=1 MIENTRAS i<= 100 HACER Mostrar(num[i]) i:= i + 1 1 2 3 4 5 6 7 8 9 10 28 28 1 + 1 2 -3 -3 2 + 1 3 15 15 3 + 1 4 28 -3 15 EJEMPLO 1 Hacer un algoritmo que cargue un array de enteros y sume todos los elementos del mismo y visualice el resultado VAR num : array[1..100] de Entero suma: entero i:=1 MIENTRAS i<= 100 HACER Leer( num[i] ) i:= i + 1 i:=1 suma:=0 MIENTRAS i<= 100 HACER suma:= suma + num[i] i:= i + 1 Mostrar( suma ) -3 15 28 20 30 80 90 -5 -8 25 0 3 2 1 5 4 6 7 8 9 10 28 28 28 -3 25 25 15 40 40 20 60 60 30 90 90 80 170 170 90 260 260 -5 255 255 -8 247 247 25 272 272 Hacer procedimiento de carga, visualización y suma de elementos del vector Programa EjemploVectores VAR vec_num : array[1..100] de Entero resultado : entero Proceso Carga ( var vec_nun: array[1..100] de entero) var i: entero inicio i:=1 MIENTRAS i<= 100 HACER Leer( vec_num[i] ) i:= i + 1 fin Proceso Visualizar ( var vec_nun: array[1..100] de entero) var i: entero inicio i:=1 MIENTRAS i<= 100 HACER Mostrar(vec_num[i]) i:= i + 1 fin Proceso Sumar ( vec_nun: array[1..100] de entero, var resul: entero) var i: entero suma: entero Inicio i:=1 suma:=0 MIENTRAS i<= 100 HACER suma:= suma + vec_nun[i] i:= i + 1 resul:= suma fin INICO // programa principal Carga(vec_num) Visualizar(vec_num) Sumar(vec_num,resultado) Mostrar(resultado) FIN Hacer un procedimiento que reciba un vector de entero y devuelva el promedio Proceso Promedio ( vec_nun: array[1..100] de entero, var pro: entero) var i: entero suma: entero Inicio i:=1 suma:=0 MIENTRAS i<= 100 HACER suma:= suma + vec_num[i] i:= i + 1 pro := suma / 100 fin Programa EjemploVectores VAR vec_num : array[1..100] de Entero resultado : entero Proceso Carga ( var vec_nun: array[1..100] de entero) var i: entero inicio i:=1 MIENTRAS i<= 100 HACER Leer( vec_num[i] ) i:= i + 1 fin Proceso Visualizar ( var vec_nun: array[1..100] de entero) var i: entero inicio i:=1 MIENTRAS i<= 100 HACER Mostrar(vec_num[i]) i:= i + 1 fin Proceso Sumar ( vec_nun: array[1..100] de entero, var resul: entero) var i: entero suma: entero Inicio i:=1 suma:=0 MIENTRAS i<= 100 HACER suma:= suma + vec_nun[i] i:= i + 1 resul:= suma fin INICO // programa principal Carga(vec_num) Visualizar(vec_num) Sumar(vec_num,resultado) Mostrar(resultado) FIN -3 15 28 20 30 80 90 -5 -8 25 -3 15 20 30 80 90 -5 -8 25 272 15 20 30 80 90 -5 -8 25 272 28 -3 28 image1.png