Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación...

42
Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y 75.40 Algoritmos y Programación I Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina

Transcript of Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación...

Page 1: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

75.40 Algoritmos y Programación I75.40 Algoritmos y Programación I

Síntesis Teórica

Cátedra: Ing. Domingo T. Mandrafina

Page 2: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

75.40 Algoritmos y Programación I75.40 Algoritmos y Programación I

Síntesis Teórica

Cátedra: Ing. Domingo T. Mandrafina

Page 3: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

3

IndiceIndice

• Vectores y Matrices 4

Page 4: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

4

Vectores y MatricesVectores y Matrices

• Vectores: Introducción

– Con lo aprendido hasta ahora resolvamos los siguientes problemas:

• Dados 50 números enteros, obtener el promedio de ellos. Mostrar por pantalla dicho promedio y los números ingresados que sean mayores que él.

• Dados n números, obtener e imprimir la suma de todos ellos. A continuación mostrar por pantalla todos los sumandos.

Page 5: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

5

Vectores y MatricesVectores y Matrices• Es posible resolver estos problemas? Por qué?

• Una de las principales dificultades que se observan con estos problemas es que para la resolución de ambos es necesario almacenar la totalidad de los datos a procesar.

• No sería eficiente crear n cantidad de variables para guardar estos datos.

• Para realizar programas y/o algoritmos que nos permitan resolver los problemas planteados, usaremos una nueva estructura de datos denominada vectores.

Page 6: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

6

Vectores y MatricesVectores y Matrices

• Una estructura de datos es un conjunto de datos con un cierto orden.

• Las estructuras de datos pueden ser dinámicas o estáticas.

– Estáticas: aquellas a las que se le asigna una cantidad fija de memoria de acuerdo a lo definidio en la declaración de la variable.

– Dinámicas: son aquellas cuyo tamaño en memoria aumenta o disminuye en tiempo de ejecución de acuerdo a las necesidades del programa.

Page 7: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

7

Vectores y MatricesVectores y Matrices

Tipos de Estructuras

Estáticas

Dinámicas (punteros)

SimplesRealesEnterosChar BooleanEnumerados

Stringarrayssetrecordfile

Complejas

Page 8: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

8

VectoresVectores

• Qué es un vector? Un vector (o arreglo unidimensional) es una estructura de datos en la cual se almacena un conjunto de datos de un mismo tipo. Es decir que un arreglo es una lista de n elementos que posee las siguientes características:

– se identifica por un único nombre de variable

– sus elementos se almacenan en posiciones contiguas de memoria

– se accede a cada uno de sus elementos en forma aleatoria

Page 9: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

9

VectoresVectores

Mi_vector

Nombre de la variable

9 35 4 826

Elementos

Posición : 1Contenido : Mi_vector[1] = 9

Page 10: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

10

VectoresVectores

• Ejemplos:

– Ejemplo 1. Resolvamos este primer ejemplo:

– Cargar 10 elementos en un vector, sumarlos y mostrar el resultado por pantalla.

– Pasos para resolver este problema:• Leer un vector de 10 elementos

• Sumar los elementos

• Mostrar el resultado de la suma por pantalla

Page 11: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

11

VectoresVectores

Ejemplo 1

Muestra resultados

Lectura delarreglo

• Ejemplo 1 - Diagrama de Jackson

Suma de los elementos

Page 12: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

12

Vectores - Ejemplo1Vectores - Ejemplo1Program Ejemplo1; {Version 1}typesumandos = array[1..10] of integer;varsuma, i : integer;vec_sumandos : sumandos;beginsuma := 0;for i:= 1 to 10 do

read(vec_sumandos[i] )for i := 1 to 10 do

suma:= suma +vec_sumandos[i];writeln (´La suma de los números es´, suma);end.

Declaración de la variable arreglo

Declaración del tipo del arreglo

Lectura de los elementos del arreglo

Suma de los elementos

Page 13: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

13

Vectores - Ejemplo1Vectores - Ejemplo1Program Ejemplo1; {Version 2}typesumandos = array[1..10] of integer;varsuma, i : integer;vec_sumandos : sumandos;beginsuma := 0;for i:= 1 to 10 do

beginread(vec_sumandos[i] )suma:= suma +vec_sumandos[i];end;

writeln (´La suma de los números es´, suma);end.

Page 14: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

14

Vectores - DeclaraciónVectores - Declaración

• Como ya dijimos anteriormente, los arreglos son estructuras de datos, por lo tanto las mismas deben ser declaradas. Esta operación se realiza en la seccción “Type” de un programa en Pascal. (como puede verse en el ejemplo1)

• formato

typenombre_del_tipo = array[tipo_subindice * ] of tipo;

* debe ser de tipo ordinal: boolean, char, enumerado o subrango

Page 15: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

15

Vectores - DeclaraciónVectores - Declaración

• Luego de la declaración del tipo, se declara la variable.

• formato

varnombre_variable: nombre_del_tipo;

Page 16: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

16

Vectores - DeclaraciónVectores - Declaración

• Ejemplos de declaraciones:

• Ej1:

typeValores = array[ -10..10 ] of real;

var

precios: valores;

Page 17: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

17

Vectores - DeclaraciónVectores - Declaración

• Ejemplos de declaraciones:

• Ej2:

const

Max= 500;

typeT_Texto = array[ 1..Max ] of char;

var

Texto: T_Texto;

Page 18: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

18

Vectores - Manejo de índicesVectores - Manejo de índices

• Asignación de valores

Texto[3] := ´a´;

Precios[0] := 23.50;

Como ya dijimos, los índices de un arreglo pueden ser: entero, lógico, caracter, enumerado o subrango.

Page 19: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

19

Vectores - Manejo de índicesVectores - Manejo de índices

Ej3:

const

longitud = 40;

altura = 30;

type

horizontal = 1..Longitud;

T_Línea = Array [ horizontal ] of char;

var

Linea: T_Linea

Page 20: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

20

Vectores - Manejo de índicesVectores - Manejo de índices

Ej4:

type

DiasSemana = (Lunes, Martes, Miercoles,Jueves, Viernes, Sabado, Domingo );

T_Dias = array [DiasSemana] of integer;

var

Dias: T_Dias;

Page 21: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

21

Vectores - OperacionesVectores - Operaciones

• Con la siguiente declaración:

type

T_Notas = array [1..30] of integer;

var

Notas: T_Notas;

• Lectura de un vector

for i:= 1 to 30 do read(Notas[i] )

Page 22: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

22

Vectores - OperacionesVectores - Operaciones

• Escritura de un vector

for i:= 1 to 30 do writeln(Notas[i] )

Page 23: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

23

Vectores - OperacionesVectores - Operaciones

• Con la siguiente declaración:

type

T_Notas = array [1..30] of integer;

var

Notas, Aux_Notas: T_Notas;

Copia de vectores

for i:= 1 to 30 do Aux_Notas[i]:= Notas[i];

o bien: Aux_Notas:=Notas;

Page 24: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

24

Vectores - Ejemplos resueltosVectores - Ejemplos resueltos

Ej2- Dados 50 números enteros, obtener el promedio de ellos. Mostrar por pantalla dicho promedio y los números ingresados que sean mayores que el mismo.

Ej3 - Dados n números, obtener e imprimir la suma de todos ellos. A continuación mostrar por pantalla todos los sumandos.

Page 25: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

25

Vectores - Ejemplos resueltosVectores - Ejemplos resueltosProgram Ej2; constmax = 50;typet_numeros = array[1.. max] of integer;varsuma, i : integer;promedio: real;numeros : t_numeros;beginsuma := 0;

Page 26: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

26

Vectores - Ejemplos resueltosVectores - Ejemplos resueltosfor i:= 1 to max do

beginread(numeros[i] )suma:= suma +numeros[i];end;

Promedio:= suma/max;writeln (´El promedio es ´,Promedio´);for i := 1 to 50 do

if numeros[i] > promediothen

writeln (´El número´, numeros[i], ´es mayor al promedio´);end.

Page 27: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

27

Vectores - Ejemplos resueltosVectores - Ejemplos resueltosProgram Ej3; constmax = 100;typet_numeros = array[1.. max] of integer;varsuma, i, n : integer;promedio: real;numeros : t_numeros;beginsuma := 0; write (´Ingrese la cantidad de números a sumar. (Como máximo, 100 números´);readln(n);

Page 28: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

28

Vectores - Ejemplos resueltosVectores - Ejemplos resueltos

for i:= 1 to n do beginread(numeros[i] )suma:= suma +numeros[i];end;

writeln (´La suma es ´,suma´);for i := 1 to n do

writeln (´El sumando´, i, ´es´, numeros[i]);end.

Page 29: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

29

Vectores - Vectores Paralelos Vectores - Vectores Paralelos • Dos o más arreglos que utilizan el mismo subíndice para

acceder a elementos de distintos arreglos, se denominan arreglos paralelos. Estos arreglos pueden procesarse simultáneamente.

• Ejercicio:

– Se tienen dos arreglos. El primero contiene nombres de personas y el segundo contiene los sexos de las personas del primer arreglo, codificados como ´f´femenino y ´m´ masculino. Obtener a partir de estos otros dos arreglos, el primero de los cuales debe contener todos los nombres de los varones y el segundo, el nombre de todas las mujeres

Page 30: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

30

MatricesMatrices

• Resolvamos el siguiente problema:

– Un instituto desea controlar los resultados de los alumnos en las distintas asignaturas de la facultad de Ingeniería. El programa debe ingresar las calificaciones de los alumnos y visualizar en pantalla la media de notas por alumno y la media de notas por asignatura.

– Las asignaturas están codificadas de 1 a 6 y hay 30 alumnos.

Page 31: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

31

MatricesMatrices

• Es posible resolver este problema con lo visto hasta ahora?

• Para realizar el anterior programa , debemos trabajar con una tabla (o matriz o arreglo bidimensional)

Page 32: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

32

MatricesMatrices

9 35 4 826

9 35 4 826

9 35 4 826

Mi_Matriz

Nombre de la variable

Posición : 3,1Contenido : Mi_vector[3,1] = 9

Page 33: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

33

Matrices - DeclaracionesMatrices - Declaraciones

• Ejemplos de declaraciones:

• Ej1:

typeT_matriz = array[ 1..10, 1..10 ] of real;

var

Matriz: valores;

Page 34: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

34

Matrices - DeclaracionesMatrices - Declaraciones

• Ejemplos de declaraciones:

• Ej2:

typeT_matriz = array[ 1..10 ] of array [ 1..10 ] of real;

var

Matriz: valores;

Page 35: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

35

Matrices - DeclaracionesMatrices - Declaraciones

• Ejemplos de declaraciones:

• Ej3:

typeT_filas = array[ 1..10 ] of of real;

T_Matriz = array[ 1..10 ] of of T_filas;

var

Matriz: valores;

Page 36: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

36

Matrices - OperacionesMatrices - Operaciones

• Con la siguiente declaración:type

T_matriz = array[ 1..10 ] of array [ 1..10 ] of real;

var

Matriz: valores;

• Lectura de una matriz

for i:= 1 to 10 do

for j:= 1 to 10 do readln(Matriz[i,j] )

Page 37: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

37

Matrices - OperacionesMatrices - Operaciones

• Escritura de una matriz

for i:= 1 to 10 do for j:= 1 to 10 do

writeln(Matriz[i,j] )

El recorrido de las matrices puede realizarse tanto por filas como por columnas, de acuerdo al problema a resolver.

Page 38: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

38

Matrices - Ejemplos resueltosMatrices - Ejemplos resueltos

Ej4. Un instituto desea controlar los resultados de los alumnos en las distintas asignaturas de la facultad de Ingeniería. El programa debe ingresar las calificaciones de los alumnos y visualizar en pantalla la media de notas por alumno y la media de notas por asignatura.

– Las asignaturas están codificadas de 1 a 6 y hay 30 alumnos.

Page 39: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

39

Matrices - Ejemplos resueltosMatrices - Ejemplos resueltosProgram Ej4; constmax_fila = 6 ;max_col = 30;typet_tabla = array[1.. max_fila,max_col ] of char;vari, j: integer;tabla: t_tabla;suma: integer;prom_al, prom_mat:real;beginfor i:= 1 to max_fila do

for j:= 1 to max_fila do writeln(´Ingrese la nota para la materia´, i, ´del alumno´, j);

Page 40: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

40

Matrices - Ejemplos resueltosMatrices - Ejemplos resueltos

for i:= 1 to max_fila do beginsuma:=0; for j:= 1 to max_col do

suma:= suma + tabla[i,j];prom_mat [i] : =suma /i;

end; for i:= 1 to max_col do beginsuma:=0; for j:= 1 to max_fila do

suma:= suma + tabla[i,j];prom_al [i] : =suma /i;end;

Page 41: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

41

Matrices - Ejemplos resueltosMatrices - Ejemplos resueltos

writeln (´La suma es ´,suma´);for i := 1 to max_fila do writeln (´El promedio de calificaciones para la asignatura´, i, ´es´, prom_mat[i]);

end.for j := 1 to max_col do writeln (´El promedio de calificaciones para el alumno´, j, ´es´, prom_al[j]);

end.

Page 42: Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina 75.40 Algoritmos y Programación I Síntesis Teórica Cátedra: Ing. Domingo T. Mandrafina.

Algoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina

42

Arreglos multidimesionalesArreglos multidimesionales

Así como hemos trabajado con vectores (arreglos unidemsionales) y matrices (arreglos unideimesionales), es posible trabajar con arreglos de más de dos dimensiones, los que son denominados arreglos multidimensionales.

Ejemplos de problemas de aplicación de arreglos multidimesionales

Se desea escribir un programa que permita manejar la información de habitantes de un complejo habitacional. El mismo posee 7 torres; a su vez cada torre posee 20 pisos y cada piso 6 departamentos.

Se desea saber:

a) Cantidad total de habitantes del complejo

b) Cantidad promedio de habitantes por piso de cada torre

c) Cantidad promedio de habitantes por torre