Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
1
08-2833 INTRODUCCIÓN A LA PROGRAMACIÓN
ING. GERARDO GUACARÁN ZURITA
Pre-Requisito: Matemáticas II (08-1824) Horas semanales: 5
16 semanas 80 Horas Créditos: 3
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
2
Motivación Inicial
Laberinto de filas
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Debes colocar seis estrellas en este panal, de forma que en cada línea -
horizontales y diagonales- haya siempre el mismo número de lunas que
de estrellas.
Respuesta
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
3
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Son comúnmente conocidos como lista, columna o vector, de datos del
mismo tipo, a los que colectivamente nos referimos mediante un nombre.
Deben cumplir lo siguiente:
• Compuesto por un número de elementos finito.
• Tamaño fijo: el tamaño del arreglo debe ser conocido en tiempo de compilación.
• Homogéneo: todos los elementos son del mismo tipo.
• Son almacenados en posiciones contiguas de memoria, cada uno de los cuales se les puede acceder directamente.
• Cada elemento se puede procesar como si fuese una variable simple ocupando una posición de memoria.
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
4
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
El orden de un vector viene dado por la posición que ocupa dentro del
arreglo, y se expresa mediante un subíndice que normalmente es un
numero entero. Los vectores pueden representarse como una fila o una
columna de datos (una dimensión). El arreglo unidimensional puede
entenderse como una única fila y varias columnas o como una columna y
varias filas.
i:=1
i:=2
i:=3
i:=n
Un
a colu
mn
a varias filas
….
i:=1 i:=2 i:=3……i:=n
Una fila varias columnas
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
5
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Descripción de un Arreglo Unidimensional
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
6
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Declaración:
Al igual que las variables simples, los arreglos se deben declarar.
Si deseas que el arreglo Si deseas que el arreglo
sea global se declaran en: sea local se declaran en:
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
7
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Declaración:
La sintaxis para declarar un arreglo unidimensional se muestra a
continuación:
VAR
N_VECTOR: ARRAY [1..n] of tipo_dato
donde:
N_VECTOR: Nombre del vector
n: Número de elementos del vector
tipo_dato: Tipo de variables que va a almacenar el arreglo.
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
8
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Ejemplos de declaraciones:
Para declarar el arreglo notas:
5,75 8,88 3,25 1 9,45 7,75 4,5
NOTAS
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
9
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Introduciendo Datos en el Vector:
Existen dos modalidades:
• Entrada no documentada
• Entrada documentada
No Documentada:
For i:=1 to 7 do
NOTAS[i]:=strtofloat(inputbox(‘’,’’,’’));
Documentada:
For i:=1 to 7 do
NOTAS[i]:=strtofloat(inputbox(‘Entrada de Notas’,’Nota ’+inttostr(i)+’=’,’’));
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
10
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Presentación de resultados del Vector:
Al igual que para la entrada, las salidas tienen dos modalidades:
• Salida no documentada
• Salida documentada
No Documentada:
For i:=1 to 7 do
showmessage(floattostr(NOTAS[i]));
Documentada:
For i:=1 to 7 do
showmessage(‘Notas [‘ +inttostr(i) +’] =’ +floattostr(NOTAS[i]));
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
11
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Ejercicios:
1. Realizar un programa que lea un vector de N nombres de
estudiantes, posteriormente la aplicación debe solicitar el nombre
de un estudiante y busque en el vector si el nombre está en la lista
e indicar su posición.
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
12
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Respuesta:
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
13
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Ejercicios:
2. Realizar un programa que lea un N temperaturas. Se desea que
calcule la media y determine entre todas ellas cuántas son
superiores o iguales a la media.
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
14
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Respuesta:
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
15
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Ejercicios:
3. Calcular la desviación estándar muestral S, de N números:
Donde x1, x2 … xn, son los N números a leer.
x: Media aritmética de los N númerosN
Suma de los N númerosi=1
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
16
Arreglos unidimensionales
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Respuesta:
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
17
Repaso
El siguiente código tiene errores. Trate de corregirlos.
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Error: Los datos reales no se les define un tamaño en memoria, ya tienen
espacio estándar.
Error: Se debe colocar el índice para la
lectura del vector:vector[i]
Error: En la conversión. Fíjense que el vector se
declaró como real, por lo tanto se corregiría así:
floattostr
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
18
Repaso
Y aquí el código corregido:
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
19
Ejercicios propuestos
1. Se tiene una lista de N nombres. Diseñe una aplicación Delphi
que calcule:
a. La cantidad de nombres con más de 10 letras.
b. Poner en mayúsculas los que ocupen posiciones impares
y los de posiciones pares que los escriba en minúsculas.
c. Contar los que empiecen y terminen con A.
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
20
Ejercicios propuestos
2. Realizar un programa que obtenga a partir de una serie de 100
datos estadísticos (xi), las medidas más generalizadas de
centralización y dispersión:
a. Valor mínimo: xmin
b. Valor máximo: xmax
c. Rango: R= xmax- xmin
d. Media aritmética: x = 1/n xi
e. Varianza: S2 = 1/n (xi – x )2
f. Desviación típica: S = 1/n (xi – x )2
g. Coeficiente de variación: r = S
x
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
21
Conceptos para la próxima clase
1. Arreglos bidimensionales.
2. Historia de las matrices.
3. Definiciones y notaciones de matrices.
4. Ejemplos de matrices.
5. Operaciones con matrices.
Objetivo 2: Utilizar arreglos unidimensionales (Vectores).
Haga clic para cambiar el estilo de título
• Haga clic para modificar el estilo de texto del patrón– Segundo nivel
• Tercer nivel– Cuarto nivel
» Quinto nivel
22