COMPUTACION 2009 Clase 6 Clase 6.

Slides:



Advertisements
Presentaciones similares
Arreglos Unidimensionales y Bidimensionales ESTRUCTURAS DE DATOS I
Advertisements

2.1.1 Definición. Un arreglo puede definirse como un grupo o una colección finita, homogénea y ordenada de elementos. Los arreglos pueden ser de los siguientes.
Programación de Computadores
Programación de Computadores
2 Estructuras lineales.. Qué es una estructura? La estructura es una manera de conectar los valores y de manera automática conectarlos de manera que tengan.
Iteración La iteración permite modelar problemas en los cuales una secuencia de instrucciones debe ejecutarse varias veces. La cantidad de iteraciones.
Elementos de Pascal Escribir un programa en Pascal que lea los valores de los catetos de un triángulo rectángulo y calcule y muestre la hipotenusa. program.
Metodología de la Programación
Estructuras de Datos (ARRAYS)
Las estructuras de arreglos fueron usadas en las primeras computadoras digitales, cuando la programación se hacía todavía en lenguaje máquina, para tablas.
MANEJO DE ARRAYS EN C.
FORTRAN 90 arreglos.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Estructuras de control
Arreglos Ing. Nahiby Castillo.
Estructuras de datos M.I.A Daniel Alejandro García López.
Unidad 3 Punteros.
C lase 10 COMPUTACION /17/2014Computacion - Fac. Ingeniería2  Ademas de los ya vistos (tipos simples), puede usarse como parámetros variables.
Vectores en java.
Fundamentos de Programación
Sesión 6 Sentencias de Repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Clase 12 COMPUTACION 2009 Tipos de Datos PASCAL Estructurados Simples Primitivos No primitivos Estáticos Integer Real Char Boolean String Archivos Registros.
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
Arrays (introducción)
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.
COMPUTACION 2009 Clase 2.
TIPOS Y ESTRUCTURAS BÁSICAS DE DATOS
ESTRUCTURAS DE DATOS I Conocer, comprender y analizar algunos de los principales tipos de estructuras de datos.
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
ESTRUCTURA DE DATOS EN JAVA
COMPUTACION 2009 Clase 6 Clase 7.
Clase 10: Estructuras de datos y arreglos.
METODOLOGÍA DE LA PROGRAMACIÓN
Agosto 2010Programación I - Tipo de Datos1 Programación I Prof. Adjunto: Lic. Jorge O. Scucimarri Universidad Nacional de Luján Licenciatura en Sistemas.
Resolución de Problemas y Algoritmos Uso de iteración con secuencias
Programación en Pascal
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
Sesión 17 Tipos de datos Estruturados Arreglos de Registros Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
COMPUTACION 2009 C lase 4 Programa PASCAL SENTENCIAS DATOS Expresiones Tipos Declaración de variables Declaración de variables Asignación Entrada/Salida.
Aplicación de estructuras de datos
Programación I Arreglos II- Matrices.
75.40 Algoritmos y Programación I
Teoría – Alejandro Gonzalez
Fundamentos de Programación
Vectores y Matrices.
Programación I Arreglos. Los elementos de un arreglo son todos del mismo tipo de dato (todos integer o real o char o registros o aún arreglos)
Programación en C para electrónicos
Definir un vector Forma general Variable=[tipo]*tamaño Tipo: es el valor inicial con el cual quedarán llenas todas las posiciones creadas del vector. Tamaño:
Tema 8: Tipos de Datos Estructurados I
Matrices Departamento de Computación Escuela de Ingeniería de Sistemas
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Vectores y Matrices.
Tema 6: Estructuras de Control
Clase 6 COMPUTACION 2009 C lase 8 Tipos de Datos PASCAL Estructurados Simples Primitivos No primitivos Integer Real Char Boolean String Archivos Registros.
Arreglos y comunicación Usuario
Matrices Prof. Flor Narciso Departamento de Computación
Vectores y Matrices.
Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Estructura de datos I CIS - UABJB.
 Un lenguaje se puede definir como un conjunto de palabras y formas de expresión por medio de las cuales se comunican y relacionan miembros de una comunidad.
Visual Basic FUNCIONES Y PROCEDIMIENTOS
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Computación I. CI-2125 Tema VII
Programación de Computadores
ESTRUCTURAS DE DATOS “Conceptualización de estructuras de datos” Por: Eduardo Robayo.
Prof. Jonathan Silva Ingeniería Civil – Informática I Ingeniería Civil Informática I Clase 5.
PROF. RAFAEL MONTENEGRO B. UNELLEZ-APURE Introducci Ó n a los Arreglos (“arrays”) en C++
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
Transcripción de la presentación:

COMPUTACION 2009 Clase 6 Clase 6

Tipos de Datos PASCAL Estructurados Simples Archivos Registros Arreglos Primitivos N-dimensionales Vectores No primitivos String Boolean Matrices Char Real Integer

Computación - Facultad de Ingeniería Marca Cilindrada Precio Stock HONDA 100 5000 $ 7 HONDA 220 7800.50 $ 2 SUZUKI 450 14000 $ 3 HARLEY_D 800 50000 $ 0 KAWASAKI 650 30000 $ 3 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Problema Almacenar toda la información anterior en memoria. Si bien se puede almacenar en variables simples, no es una solución de carácter general. Una buena solución es almacenar la información en una variable estructurada 4/16/2017 Computación - Facultad de Ingeniería

Estructura para guardar datos SUZUKI HONDA HARLEY_D KAWASAKI 4/16/2017 Computación - Facultad de Ingeniería

Estructura para guardar datos KAWASAKI HONDA SUZUKI HARLEY_D 1 2 3 4 Marca_motos 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería DATOS ESTRUCTURADOS El usuario puede combinar lógicamente datos simples para formar estructuras compuestas que representen apropiadamente la información a procesar. Un tipo estructurado difiere de un tipo simple en que las variables de un tipo estructurado tienen mas de una componente. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería DATOS ESTRUCTURADOS Cada componente de un tipo estructurado es una variable que puede tener una estructura simple o estructurada. En el nivel mas bajo, las componentes de una variable estructurada tienen tipos simples (y cada una de ellas pueden ser usadas como variables simples: asignadas, leidas, etc.) 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería DATOS ESTRUCTURADOS Un tipo de dato estructurado se caracteriza por el(los) tipo(s) de sus componentes y, sobre todo, por el método de estructuración. Cada uno de estos métodos es una opción que puede manejar el programador a traves de la sección TYPE. Un 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería DATOS ESTRUCTURADOS Por lo tanto, todos los datos estructurados deben, en última instancia, ser construidos a partir de datos primitivos. Ejemplo: el número complejo toma la forma de un par ordenado de números reales. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería DATOS ESTRUCTURADOS Una estructura de datos es un conjunto de datos reunidos bajo un único nombre colectivo (su identificador). Los tipos estructurados de PASCAL que veremos son: Arreglos (ARRAY) Registros (RECORDS) Archivos (FILES) Un 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Estructura de arreglo HONDA SUZUKI HARLEY_D KAWASAKI 1 2 3 4 Todas las componentes son del mismo tipo (string[8]) Son 4 componentes Marca_motos 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Método de estructuración de los ARREGLOS Un arreglo es una colección ordenada de variables todas las cuales tienen el mismo tipo (esto es, tienen un tipo homogéneo). Cada uno de los elementos de la colección se llaman componentes del arreglo. Los arreglos poseen un número fijo de componentes. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería ARREGLOS: propiedades 1. Todas las componentes poseen el mismo tipo de dato. El tipo de componentes de Marca_motos es string[8] 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería ARREGLOS: propiedades 2. Los arreglos poseen dimensión y se reconoce por la cantidad de índices que posee el arreglo. Un índice indica dimensión 1 y representa una columna de datos, un arreglo de dimensión 2 representa una tabla de datos dispuesta en filas y columnas, un arreglo de dimensión 3 representa una tabla de datos el múltiples páginas, etc. . La variable Marca_motos tiene una estructura con una dimension (un índice) 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería ARREGLOS: propiedades Array[0..4] Array[0..3;0..4] Array[0..2,0..3,0..4] n=1 n=2 n=3 2. Los arreglos poseen dimensión: n=1: dimensión 1 (arreglo unidimensional) n=2: dimensión 2 (arreglo bidimensional) n=3: dimensión 3 (arreglo tridimensional) 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería ARREGLOS: propiedades 3. Los arreglos tienen límites inferior y superior para cada dimensión. Estos límites determinan la extensión de los valores que son usados como subíndices para la dimensión. El valor de cada límite puede ser positiva, negativa o cero. Los límites de una dimensión se definen en una especificación de arreglo. El limite inferior de Marca_motos es 1 y el límite superior es 4 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería ARREGLOS: propiedades 4. El tamaño de un arreglo (esto es, el número de componentes) se indica cuando se define el arreglo y queda invariable a partir de ese momento. El cálculo del número de componentes se logra multiplicando entre si la cantidad de elementos que el arreglo posee en cada dimensión. El tamaño de Marca_motos es 4 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería ARREGLOS: propiedades 5. Cada componente de un arreglo se denota explícitamente, y es accedida, directamente, mencionando el nombre del arreglo seguido de una expresión encerrada entre corchetes , a la que llamaremos índice del arreglo ( o simplemente subíndice). Ejemplo para denotar la segunda componente (suzuki): Marca_motos[2] 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Arreglos unidimensionales (o vectores) Componentes -0.3 123.5 0.009 13 -9.08 555.6 VEC 1 2 3 4 5 6 Identificador del vector Subíndices Inicialmente usaremos arreglos unidimensionales de datos simples: se almacenó 6 datos reales (con variables simples deberíamos usar 6 identificadores de variable simple para tenerlos todos en forma simultanea en memoria). Posteriormente veremos vectores mas complejos. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Arreglos unidimensionales (o vectores) -0.3 123.5 0.009 13 -9.08 555.6 VEC 1 2 3 4 5 6 1.- Todas las componentes son reales 2.- La variable Vec tiene una estructura unidimensional 3.- La extensión es 1,2,3,4,5,6 4.- El tamaño de Vec es 6 5.- Acceso mediante nombre de la estructura e índice entre corchetes. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Tipos de datos asociados a un vector Claramente notamos que un vector tiene asociado DOS tipos de datos: 1)TIPO BASE ( o TIPO COMPONENTE): es el tipo de los elementos o componentes (visto como propiedad 5). 2)TIPO INDICE: es el tipo de los valores usados para acceder individualmente a los elementos del vector (subíndices). 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Declaración de tipo de un vector TYPE VECTOR = array[1..20] of real; Tipo indice Identificador de tipo Tipo base En la sección TYPE declaramos el identificador de tipo, la palabra reservada array, un subrango para indicar los límites de la extensión de los valores que seran usados como subíndices para la única dimensión y el tipo base (el tipo de las componentes). El tipo índice debe ser escalar 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Vector: una dimensión = un índice Extensión con un subrango TYPE VECTOR = array[1..20] of real; Limite inferior del índice Limite superior del índice Todas las variables del tipo VECTOR podrán tener una extensión máxima de 1,2,3,4,5,6,7,.......,18,19,20 Todas las variables del tipo VECTOR podrán tener un tamaño de hasta 20 componentes 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Vector: una dimensión = un índice TYPE NOMBRE = array[-5..5] of string[8]; Limite inferior del índice Limite superior del índice Todas las variables del tipo NOMBRE podrán tener una extensión máxima de -5,-4,-3,-2,-1,0,1,2,3,4,5 Todas las variables del tipo NOMBRE podrán tener un tamaño de hasta 11 componentes 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Declaración de variables con estructura de vector: ejemplo TYPE VECTOR = array[1..20] of real; VAR VEC1,VEC2:VECTOR; BEGIN …………. Cuando se declara variables de un tipo estructurado, se le indica al sistema que reserve espacio en memoria, para cada una de ellas. Para VEC1 se reserva 20 posiciones reales. Lo mismo para VEC2. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Subíndices de un vector: ejemplos TYPE VECTOR= array[1..20] of REAL; Index= -5..5; NOMBRE= array [Index] of STRING[8]; Fruta=(manzana,naranja,pera,uvas,kiwi); Estacion=(otonio,invierno,primavera,verano); COSECHA=array[estacion] of fruta; {La extensión es otonio,invierno, primavera,verano} VAR Vec:VECTOR; Nombre_motos:NOMBRE; A:COSECHA; I:integer; C:array[0..100] of real; Si bien puede usarse el tipo array sin identificador de tipo, en general no se aconseja esta práctica. Solo se justifica si se lo usa para una única variable. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Subíndices de un vector: ejemplos (sigue) BEGIN Nombre_motos[1]:=‘HONDA’; Nombre_motos[-5]:= ‘GILERA’; A[invierno]:=naranja; {En invierno tenemos naranjas frescas !} A[verano]:=uvas VEC[3]:=3+VEC[10]-VEC[5]*2; I:=15; C[I*3]:=VEC[3]/VEC[1]; READLN(Nombre_motos[0]); WRITELN(‘El resultado es =‘,C[45]); ………… 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Arreglos unidimensionales: almacenamiento A través de la lectura de un vector podemos almacenar valores en las componentes: FOR J:= 1 TO 6 DO READLN(VEC[J]); Igualmente mediante la asignación directa : VEC[4]:= -101.2;{se modificó el contenido de la 4ta componente} FOR I:=1 TO 6 DO VEC[I]:=0; {todas las componentes toman el valor 0} 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Arreglos unidimensionales: acceso Los subíndices son computables, i.e., pueden ser expresiones (de un tipo ordinal) mas complejas que una constante o variable. X:= VEC[I+1]-VEC[J-2]; El tiempo que se requiere para extraer una componente no depende del valor del selector(índice); por lo que el arreglo se denomina estructura de acceso aleatorio. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Arreglos unidimensionales: acceso Para acceder (o extraer) los elementos de esta estructura lo hacemos a través del nombre del vector seguido por el subíndice entre corchetes. En nuestro ejemplo, los accedemos así: VEC[1], VEC[2], ........, VEC[6] Y usamos a cada componente como variables de tipo real: A:= VEC[1]+VEC[4] * 3.4; FOR I:=1 TO 6 DO WRITELN(VEC[I]); 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Lectura de un vector de N componentes PROGRAM lect_vect; TYPE Vector=array[1..50] of real; VAR N,i:integer; A:vector; BEGIN Write('Cant.elem. del vector( <=50 )'); Readln(N); For i:=1 to N do Begin Write('Ingrese el elemento ',i); Readln(A[i]) End END. Se ingresa componente a componente 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Observación El tamaño de los arreglos PASCAL no pueden cambiar durante la ejecución del programa (i.e. poseen asignación estática de memoria). A fin de agilizar la modificación del tamaño de un vector se puede usar una constante: CONST Numero_maximo=100; TYPE Vector_tres=array[1..numero_maximo] of integer; 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Ejemplos: Escriba y ejecute programas PASCAL para: Luego de ingresar un vector de enteros de N componentes: 1) Sumar todos los componentes y almacenar el resultado a continuación del último componente. 2)Colocar en otro vector una P si la componente correspondiente es par, y colocar una I si es impar. 3) Agregar un elemento en la posición k-ésima. 4/16/2017 Computación - Facultad de Ingeniería

program primero; uses crt; TYPE vector=array [1..30] of longint; VAR vec:vector; i,n:integer; suma:longint; BEGIN CLRSCR; WRITE( 'Ingrese cantidad de elementos <=29 '); READLN(n); FOR i:=1 to n do begin WRITE('Ingrese un elemento entero[',i,'] '); READLN(vec[i]) end; suma:=0; FOR i:=1 to n do suma:=suma+vec[i]; vec[n+1]:=suma; FOR i:=1 TO n+1 DO WRITELN(vec[i],' '); READLN END. Sumar todos los componentes y almacenar el resultado a continuación del último componente.

program segundo; TYPE vector=array [1..30] of longint; pi=array [1..30] of char; VAR vec:vector; control:pi; i,n:integer; BEGIN WRITE( 'Ingrese cantidad de elementos <=29 '); READLN(n); FOR i:=1 to n do begin WRITE('Ingrese un elemento entero[',i,'] '); READLN(vec[i]) end; FOR i:=1 TO n DO IF odd(vec[i]) THEN control[i]:=‘I' ELSE control[i]:=‘P'; FOR i:=1 TO n DO WRITE(vec[i],' '); WRITELN; WRITE(control[i],' '); READLN END. Colocar en otro vector una P si la componente correspondiente es par, y colocar una I si es impar.

Agregar un elemento en la posición k-ésima. program tercero; TYPE vector=array [1..30] of longint; VAR vec:vector; i,n,k:integer; nuevo:longint; BEGIN WRITE( 'Ingrese cantidad de elementos <=29 '); READLN(n); FOR i:=1 to n do begin WRITE('Ingrese un elemento entero[',i,'] '); READLN(vec[i]) end; WRITE('Ingrese el elemento que desea intercalar '); READLN(nuevo); REPEAT WRITE('Ingrese posicion donde desea intercalarlo '); READLN(k); UNTIL (k>=1) and (k<=n); FOR i:=n DOWNTO k DO vec[i+1]:=vec[i]; vec[k]:=nuevo; FOR i:=1 to n+1 DO write(vec[i]); WRITELN END. Agregar un elemento en la posición k-ésima.

Computación - Facultad de Ingeniería Funciones low y high TYPE vector=array [1..30] of longint; VAR vec:vector; Begin vec[32]:=23456; Range check error !!! La extensión es de 1 a 30 Para verificar el rango puede usar las funciones low y high que devuelven los extremos de la extensión (o rango). Writeln(low(vec)); {devuelve 1} Writeln(high(vec)); {devuelve 30} 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Arrays y strings Los strings son vectores de caracteres. Es posible acceder a los caracteres de un string mediante una sintaxis de array. Los string están indexados desde 0, pero el primer carácter se encuentra en la posición 1. Cadena:=‘Este es un ejemplo de string’; C:=cadena[4]; {e} D:=cadena[10]; {n} Writeln(cadena[0]); Error:element zero can’t be accessed 4/16/2017 Computación - Facultad de Ingeniería

VECTORES PARALELOS: ejemplo Sean los siguientes datos: Apellido y n. Depto. Expensas Pagó? MARTINEZ,Juan 4 A 50 $ Si GONZALEZ Pedro 1 B 100 $ No ALONSO Maria 2 D 30 $ Si ALONSO Marcelo 5 H 120 $ si Se desea tener un listado de los propietarios que no han pagado las expensas. Imprimir apellido y nombre, departamento y deuda.

VECTORES PARALELOS: Apellido y n. Depto. Expensas Pagó? MARTINEZ,Juan 4 A 50 $ Si GONZALEZ Pedro 1 B 100 $ No ALONSO Maria 2 D 30 $ Si ALONSO Marcelo 5 H 120 $ si AyN Depto Expen Pago Colección de datos del mismo tipo: string Colección de datos del mismo tipo: string Colección de datos del mismo tipo: real Colección de datos del mismo tipo: booleano

VECTORES PARALELOS: Apellido y n. Depto. Expensas Pagó? MARTINEZ,Juan 4 A 50 $ Si GONZALEZ Pedro 1 B 100 $ No ALONSO Maria 2 D 30 $ Si ALONSO Marcelo 5 H 120 $ si AyN Depto Expen Pago (vector de (vector de (vector de (Vector String) string) reales) booleano)

Computación - Facultad de Ingeniería Vectores paralelos Los vectores paralelos pueden ser usados para almacenar grupos de datos de diferentes tipos. Las características asociadas a cada grupo pueden ser representadas apropiadamente con esta estructura de datos. Por ejemplo, un grupo puede estar constituido por los datos de un propietario, o datos sobre un libro o datos sobre un alumno, etc. MARTINEZ,Juan 4A 50 $ Si Grupo de datos de un propietario 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Vectores paralelos Cada una de las características de un grupo (por ejemplo Nombre, Dirección, Autor, etc.) deben almacenarse y recuperarse de manera tal de mantener la integridad de los datos. MARTINEZ,Juan 4A 50 $ Si Estos datos están asociados entre si (son todos del mismo propietario) y NO deben mezclarse con los datos de otro propietario. 4/16/2017 Computación - Facultad de Ingeniería

Computación - Facultad de Ingeniería Vectores paralelos Como se tiene varios grupos de datos (p.e. varios propietarios), se puede almacenar en un vector la misma característica correspondiente a cada grupo. Esto se puede hacer con cada una de las características. De ahí la noción de vector paralelo. Para almacenar y recuperar los ítems de cada unidad, se usan componentes del mismo índice en cada uno de los vectores paralelos. 4/16/2017 Computación - Facultad de Ingeniería

VECTORES PARALELOS: ejemplo Apellido y n. Depto. Expensas Pagó? Indice MARTINEZ,Juan 4 A 50 $ Si GONZALEZ Pedro 1 B 100 $ No ALONSO Maria 2 D 30 $ Si ALONSO Marcelo 5 H 120 $ si 1 2 3 4 Si el índice es igual a 1, el primer grupo de datos está representada en las primeras componentes de cada uno de los cuatro vectores.

Program vect_paralelo; Type Vec1=array[1..100] of string[25]; Vec2=array[1..100] of real; Vec3=array[1..100] of boolean; Var Depto,AyN:vec1; Expen:vec2; Pago:vec3; N,I,J,k:integer; Aux:char; Begin Write(‘Cant. de deptos’);Readln(N);

For i:=1 to N do Begin Writeln(‘Departamento ‘,i); Write(‘Apellido y nom.’);readln(AyN[i]); Write(‘Nro. De departamento’); readln(depto[i]); Write( ‘Expensas ‘); readln(expen[i]); Write(‘Ingrese S si pago, N sino pago’); REPEAT Readln(aux) UNTIL aux=‘S’ or aux=‘N’; pago[i]:=aux=‘S’; end; for i:=1 to N do if not(pago[i]) then writeln(AyN[i],depto[i],expen[i]); end.