SlideShare una empresa de Scribd logo
1 de 31
UNIDAD IUNIDAD I
ARREGLOSARREGLOS
Síntesis Teórica-Práctica
Profa. Anaida Escalona Tona
Estructura de DatosEstructura de Datos
• 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.
Estructura de DatosEstructura de Datos
• 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.
Estructura de datosEstructura de datos
• 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 definido 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.
Estructura de DatosEstructura de Datos
Tipos de
Estructuras
Estáticas
Dinámicas (punteros)
Simples
Reales
Enteros
Char
Boolean
Enumerados
String
arrays
set
record
file
Complejas
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
Arreglo: Edad_Adulto
19 31 18 49 35
Pos 1 Pos 2 Pos 3 Pos 4 Pos 5
RADO POR: ANAIDA ESCALONA TONAAlgoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina
VectoresVectores
• Las operaciones básicas que se pueden realizar
sobre estos son:
– Adicionar un nuevo valor a la estructura.
– Extraer o Eliminar un valor de la estructura.
– Búsqueda
– Ordenamiento
– Apareo, dadas dos estructuras originar una nueva
ordenada y que contenga a las apareadas.
VectoresVectores
Mi_vector
Nombre de
la variable
9 35 4 826
Elementos
Posición : 1
Contenido : Mi_vector[1] = 9
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
VectoresVectores
Ejemplo 1
Muestra
resultados
Lectura del
arreglo
• Ejemplo 1 - Diagrama
Suma de
los elementos
Vectores - Ejemplo1Vectores - Ejemplo1
Program Ejemplo1; {Version 1}
type
sumandos = array[1..10] of integer;
var
suma, i : integer;
vec_sumandos : sumandos;
begin
suma := 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
Vectores - Ejemplo1Vectores - Ejemplo1
Program Ejemplo1; {Version 2}
type
sumandos = array[1..10] of integer;
var
suma, i : integer;
vec_sumandos : sumandos;
begin
suma := 0;
for i:= 1 to 10 do
begin
read(vec_sumandos[i] )
suma:= suma +vec_sumandos[i];
end;
writeln (´La suma de los números es´, suma);
end.
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
type
nombre_del_tipo = array[tipo_subindice * ] of tipo;
* debe ser de tipo ordinal: boolean, char, enumerado o
subrango
RADO POR: ANAIDA ESCALONA TONAAlgoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina
• unit Unit1_Ejemplo;
• interface
• uses
• Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms,
• Dialogs, StdCtrls;
• type
• TForm1 = class(TForm)
• Button1: TButton;
• Edit1: TEdit;
• ListBox1: TListBox;
• procedure Button1Click(Sender: TObject);
• private
• { Private declarations }
• public
• { Public declarations }
• end;
• var
• Form1: TForm1;
• implementation
• {$R *.dfm}
• TYPE
• Array_Elemento=Array[1..3] of Integer;
• Var
• Array_E: Array_Elemento;
• procedure TForm1.Button1Click(Sender: TObject);
• var
• I:Integer;
• Elemento:Integer;
• Acumular:Integer;
• begin
• For I:= 1 to 3 do
• Begin
• Elemento:=StrtoInt(Edit1.text);
• Array_E[I]:=Elemento;
• ListBox1.Items.Add (InttoStr(Array_E[I]));
• Acumular:=Acumular+Array_E[I];
• Showmessage(InttoStr(Acumular));
• end;
• End;
• end.
Vectores - DeclaraciónVectores - Declaración
• Luego de la declaración del tipo, se declara la
variable.
• formato
var
nombre_variable: nombre_del_tipo;
Un vector, array, arreglo es un conjunto o agrupación finita de variables del
mismo tipo cuyo acceso se realiza por índices.
Declaración:
Tipo del Arreglo = ARRAY[Tipo de Subíndice] OF Tipo del Elemento;
Ejemplos:
VAR
MiArreglo: ARRAY[1..8] OF REAL;
Uso del TYPE
TYPE
Tipo_Arreglo= ARRAY[1..8] OF REAL;
VAR
MiArreglo: Tipo_Arreglo;
Cantidad de Celdas
de Memoria.
Tipo de Cada Celdas
de Memoria
Declaración de un ArrayDeclaración de un Array
Vectores - DeclaraciónVectores - Declaración
• Ejemplos de declaraciones:
• Ej1:
type
Valores = array[ -10..10 ] of real;
var
precios: valores;
Vectores - DeclaraciónVectores - Declaración
• Ejemplos de declaraciones:
• Ej2:
const
Max= 500;
type
T_Texto = array[ 1..Max ] of char;
var
Texto: T_Texto;
RADO POR: ANAIDA ESCALONA TONAAlgoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina
Declaración de VectoresDeclaración de Vectores
• var
• miArreglo : Array [1..2] of String;
• Begin
• miArreglo := ('Hola', ‘Adios');
• end;
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.
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
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;
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] )
Vectores - OperacionesVectores - Operaciones
• Escritura de un vector
for i:= 1 to 30 do
writeln(Notas[i] )
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;
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.
Vectores - Ejemplos resueltosVectores - Ejemplos resueltos
Program Ej2;
const
max = 50;
type
t_numeros = array[1.. max] of integer;
var
suma, i : integer;
promedio: real;
numeros : t_numeros;
begin
suma := 0;
Vectores - Ejemplos resueltosVectores - Ejemplos resueltos
for i:= 1 to max do
begin
read(numeros[i] )
suma:= suma +numeros[i];
end;
Promedio:= suma/max;
writeln (´El promedio es ´,Promedio´);
for i := 1 to 50 do
if numeros[i] > promedio
then
writeln (´El número´, numeros[i], ´es mayor al promedio´);
end.
Vectores - Ejemplos resueltosVectores - Ejemplos resueltos
Program Ej3;
const
max = 100;
type
t_numeros = array[1.. max] of integer;
var
suma, i, n : integer;
promedio: real;
numeros : t_numeros;
begin
suma := 0;
write (´Ingrese la cantidad de números a sumar. (Como máximo, 100
números´);
readln(n);
Vectores - Ejemplos resueltosVectores - Ejemplos resueltos
for i:= 1 to n do
begin
read(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.
Vectores - Vectores ParalelosVectores - 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

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Estructuras de Datos (Arreglos)
Estructuras de Datos (Arreglos)Estructuras de Datos (Arreglos)
Estructuras de Datos (Arreglos)
 
Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++Ejercicios de matrices y vectores en c++
Ejercicios de matrices y vectores en c++
 
Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402
 
Proyecto
ProyectoProyecto
Proyecto
 
Arreglos unidimensionales
Arreglos unidimensionalesArreglos unidimensionales
Arreglos unidimensionales
 
Resolución de problemas con java
Resolución de problemas con javaResolución de problemas con java
Resolución de problemas con java
 
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
 
Software omegaup
Software omegaupSoftware omegaup
Software omegaup
 
Vectores en programacion
Vectores en programacionVectores en programacion
Vectores en programacion
 
Vectores matricesi
Vectores matricesiVectores matricesi
Vectores matricesi
 
Vectores matricesi
Vectores matricesiVectores matricesi
Vectores matricesi
 
Arreglos en pseudocodigo 01
Arreglos en pseudocodigo 01Arreglos en pseudocodigo 01
Arreglos en pseudocodigo 01
 
12 Arreglos
12 Arreglos12 Arreglos
12 Arreglos
 
Programación modular
Programación modularProgramación modular
Programación modular
 
Arreglos en C
Arreglos en CArreglos en C
Arreglos en C
 
Omega Up
Omega UpOmega Up
Omega Up
 
Transparencias8
Transparencias8Transparencias8
Transparencias8
 
Estructuras
Estructuras Estructuras
Estructuras
 
Clase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y ArreglosClase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y Arreglos
 
Arreglos c++
Arreglos c++Arreglos c++
Arreglos c++
 

Similar a Estructura de Datos: Arreglos

VectoresMatricesI.ppt
VectoresMatricesI.pptVectoresMatricesI.ppt
VectoresMatricesI.pptjonhMCH
 
VectoresMatricesI.ppt
VectoresMatricesI.pptVectoresMatricesI.ppt
VectoresMatricesI.pptjonhMCH
 
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)José Antonio Sandoval Acosta
 
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)José Antonio Sandoval Acosta
 
Algoritmos1
Algoritmos1Algoritmos1
Algoritmos1utc
 
Arreglos
ArreglosArreglos
Arregloslichic
 
Pres arreglosmat animacion
Pres arreglosmat animacionPres arreglosmat animacion
Pres arreglosmat animacionJLAntonio
 
Anderson martinez arreglos
Anderson martinez arreglosAnderson martinez arreglos
Anderson martinez arreglosadrmrtinzm
 
Tipos de Datos y Operadores
Tipos de Datos y OperadoresTipos de Datos y Operadores
Tipos de Datos y OperadoresOswaldo Basurto
 
Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]chinop7
 
Programacion fantasticos
Programacion  fantasticosProgramacion  fantasticos
Programacion fantasticosBrenda Jazmin
 
Arreglos en PSeInt
Arreglos en PSeIntArreglos en PSeInt
Arreglos en PSeIntJerry
 
Excel como Herramienta de trabajo
Excel como Herramienta de trabajoExcel como Herramienta de trabajo
Excel como Herramienta de trabajoproyectosdecorazon
 
Fundamentos de programación I.pptx
Fundamentos de programación I.pptxFundamentos de programación I.pptx
Fundamentos de programación I.pptxbenjamincordero6
 

Similar a Estructura de Datos: Arreglos (20)

VectoresMatricesI.ppt
VectoresMatricesI.pptVectoresMatricesI.ppt
VectoresMatricesI.ppt
 
VectoresMatricesI.ppt
VectoresMatricesI.pptVectoresMatricesI.ppt
VectoresMatricesI.ppt
 
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
 
Los 5 fantasticos
Los 5 fantasticosLos 5 fantasticos
Los 5 fantasticos
 
Vectores y matrices
Vectores y matricesVectores y matrices
Vectores y matrices
 
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
Fundamentos de Programación - Unidad IV: Arreglos (Vectores)
 
Algoritmos1
Algoritmos1Algoritmos1
Algoritmos1
 
Arreglos
ArreglosArreglos
Arreglos
 
Uso vectores
Uso vectoresUso vectores
Uso vectores
 
Pres arreglosmat animacion
Pres arreglosmat animacionPres arreglosmat animacion
Pres arreglosmat animacion
 
clases de herramientas lorenita
clases de herramientas lorenitaclases de herramientas lorenita
clases de herramientas lorenita
 
Anderson martinez arreglos
Anderson martinez arreglosAnderson martinez arreglos
Anderson martinez arreglos
 
Tema 5 - Estructuras de datos.pdf
Tema 5 - Estructuras de datos.pdfTema 5 - Estructuras de datos.pdf
Tema 5 - Estructuras de datos.pdf
 
Tipos de Datos y Operadores
Tipos de Datos y OperadoresTipos de Datos y Operadores
Tipos de Datos y Operadores
 
Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]Capitulo i modelos_matematicos_y_errores,_parte_1[1]
Capitulo i modelos_matematicos_y_errores,_parte_1[1]
 
Programacion fantasticos
Programacion  fantasticosProgramacion  fantasticos
Programacion fantasticos
 
Arreglos en PSeInt
Arreglos en PSeIntArreglos en PSeInt
Arreglos en PSeInt
 
Excel como Herramienta de trabajo
Excel como Herramienta de trabajoExcel como Herramienta de trabajo
Excel como Herramienta de trabajo
 
Fundamentos de programación I.pptx
Fundamentos de programación I.pptxFundamentos de programación I.pptx
Fundamentos de programación I.pptx
 
Tema nº 2 102
Tema nº 2 102Tema nº 2 102
Tema nº 2 102
 

Más de Anaida Escalona Tona (13)

Plantilla about the course
Plantilla about the coursePlantilla about the course
Plantilla about the course
 
Guia Inicial Lazarus Ejercicio 1
Guia Inicial Lazarus Ejercicio 1Guia Inicial Lazarus Ejercicio 1
Guia Inicial Lazarus Ejercicio 1
 
Taller Recursos Digitales
Taller Recursos DigitalesTaller Recursos Digitales
Taller Recursos Digitales
 
Guia de bolsillo
Guia de bolsilloGuia de bolsillo
Guia de bolsillo
 
Matrices
MatricesMatrices
Matrices
 
Invitacion
InvitacionInvitacion
Invitacion
 
Invitacion
InvitacionInvitacion
Invitacion
 
Invitacion
InvitacionInvitacion
Invitacion
 
Invitacion
InvitacionInvitacion
Invitacion
 
Unidad III
Unidad IIIUnidad III
Unidad III
 
Bloque Cierre
Bloque CierreBloque Cierre
Bloque Cierre
 
Bloque Cierre
Bloque CierreBloque Cierre
Bloque Cierre
 
Como Enviar La Tarea 3
Como Enviar La Tarea 3Como Enviar La Tarea 3
Como Enviar La Tarea 3
 

Último

LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfDannyTola1
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 

Último (20)

Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdf
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 

Estructura de Datos: Arreglos

  • 1. UNIDAD IUNIDAD I ARREGLOSARREGLOS Síntesis Teórica-Práctica Profa. Anaida Escalona Tona
  • 2. Estructura de DatosEstructura de Datos • 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.
  • 3. Estructura de DatosEstructura de Datos • 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.
  • 4. Estructura de datosEstructura de datos • 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 definido 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.
  • 5. Estructura de DatosEstructura de Datos Tipos de Estructuras Estáticas Dinámicas (punteros) Simples Reales Enteros Char Boolean Enumerados String arrays set record file Complejas
  • 6. 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 Arreglo: Edad_Adulto 19 31 18 49 35 Pos 1 Pos 2 Pos 3 Pos 4 Pos 5
  • 7. RADO POR: ANAIDA ESCALONA TONAAlgoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina VectoresVectores • Las operaciones básicas que se pueden realizar sobre estos son: – Adicionar un nuevo valor a la estructura. – Extraer o Eliminar un valor de la estructura. – Búsqueda – Ordenamiento – Apareo, dadas dos estructuras originar una nueva ordenada y que contenga a las apareadas.
  • 8. VectoresVectores Mi_vector Nombre de la variable 9 35 4 826 Elementos Posición : 1 Contenido : Mi_vector[1] = 9
  • 9. 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
  • 10. VectoresVectores Ejemplo 1 Muestra resultados Lectura del arreglo • Ejemplo 1 - Diagrama Suma de los elementos
  • 11. Vectores - Ejemplo1Vectores - Ejemplo1 Program Ejemplo1; {Version 1} type sumandos = array[1..10] of integer; var suma, i : integer; vec_sumandos : sumandos; begin suma := 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
  • 12. Vectores - Ejemplo1Vectores - Ejemplo1 Program Ejemplo1; {Version 2} type sumandos = array[1..10] of integer; var suma, i : integer; vec_sumandos : sumandos; begin suma := 0; for i:= 1 to 10 do begin read(vec_sumandos[i] ) suma:= suma +vec_sumandos[i]; end; writeln (´La suma de los números es´, suma); end.
  • 13. 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 type nombre_del_tipo = array[tipo_subindice * ] of tipo; * debe ser de tipo ordinal: boolean, char, enumerado o subrango
  • 14. RADO POR: ANAIDA ESCALONA TONAAlgoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina • unit Unit1_Ejemplo; • interface • uses • Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, • Dialogs, StdCtrls; • type • TForm1 = class(TForm) • Button1: TButton; • Edit1: TEdit; • ListBox1: TListBox; • procedure Button1Click(Sender: TObject); • private • { Private declarations } • public • { Public declarations } • end; • var • Form1: TForm1; • implementation • {$R *.dfm} • TYPE • Array_Elemento=Array[1..3] of Integer; • Var • Array_E: Array_Elemento; • procedure TForm1.Button1Click(Sender: TObject); • var • I:Integer; • Elemento:Integer; • Acumular:Integer; • begin • For I:= 1 to 3 do • Begin • Elemento:=StrtoInt(Edit1.text); • Array_E[I]:=Elemento; • ListBox1.Items.Add (InttoStr(Array_E[I])); • Acumular:=Acumular+Array_E[I]; • Showmessage(InttoStr(Acumular)); • end; • End; • end.
  • 15. Vectores - DeclaraciónVectores - Declaración • Luego de la declaración del tipo, se declara la variable. • formato var nombre_variable: nombre_del_tipo;
  • 16. Un vector, array, arreglo es un conjunto o agrupación finita de variables del mismo tipo cuyo acceso se realiza por índices. Declaración: Tipo del Arreglo = ARRAY[Tipo de Subíndice] OF Tipo del Elemento; Ejemplos: VAR MiArreglo: ARRAY[1..8] OF REAL; Uso del TYPE TYPE Tipo_Arreglo= ARRAY[1..8] OF REAL; VAR MiArreglo: Tipo_Arreglo; Cantidad de Celdas de Memoria. Tipo de Cada Celdas de Memoria Declaración de un ArrayDeclaración de un Array
  • 17. Vectores - DeclaraciónVectores - Declaración • Ejemplos de declaraciones: • Ej1: type Valores = array[ -10..10 ] of real; var precios: valores;
  • 18. Vectores - DeclaraciónVectores - Declaración • Ejemplos de declaraciones: • Ej2: const Max= 500; type T_Texto = array[ 1..Max ] of char; var Texto: T_Texto;
  • 19. RADO POR: ANAIDA ESCALONA TONAAlgoritmos y Programación I - Cátedra: Ing. Domingo T. Mandrafina Declaración de VectoresDeclaración de Vectores • var • miArreglo : Array [1..2] of String; • Begin • miArreglo := ('Hola', ‘Adios'); • end;
  • 20. 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.
  • 21. 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
  • 22. 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;
  • 23. 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] )
  • 24. Vectores - OperacionesVectores - Operaciones • Escritura de un vector for i:= 1 to 30 do writeln(Notas[i] )
  • 25. 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;
  • 26. 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.
  • 27. Vectores - Ejemplos resueltosVectores - Ejemplos resueltos Program Ej2; const max = 50; type t_numeros = array[1.. max] of integer; var suma, i : integer; promedio: real; numeros : t_numeros; begin suma := 0;
  • 28. Vectores - Ejemplos resueltosVectores - Ejemplos resueltos for i:= 1 to max do begin read(numeros[i] ) suma:= suma +numeros[i]; end; Promedio:= suma/max; writeln (´El promedio es ´,Promedio´); for i := 1 to 50 do if numeros[i] > promedio then writeln (´El número´, numeros[i], ´es mayor al promedio´); end.
  • 29. Vectores - Ejemplos resueltosVectores - Ejemplos resueltos Program Ej3; const max = 100; type t_numeros = array[1.. max] of integer; var suma, i, n : integer; promedio: real; numeros : t_numeros; begin suma := 0; write (´Ingrese la cantidad de números a sumar. (Como máximo, 100 números´); readln(n);
  • 30. Vectores - Ejemplos resueltosVectores - Ejemplos resueltos for i:= 1 to n do begin read(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.
  • 31. Vectores - Vectores ParalelosVectores - 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