ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos...
Transcript of ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos...
![Page 1: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/1.jpg)
ARREGLOS I
![Page 2: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/2.jpg)
• Razón de ser
• Computadora
• Programa
• Programador
• Análisis y solución de problemas (Metodología)
• Algoritmo
• Diagrama de flujo
![Page 3: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/3.jpg)
Investigaron y estudiaron (¡comprendieron!)
• Clasificación de las computadoras
• Funciones de la memoria principal
• Unidades de medida de memoria
• Representación de textos, valores numéricos, imágenes y sonidos
• Clasificación del software (de sistema y de aplicación)
• Tipos lenguajes de programación (máquina, bajo nivel y alto nivel)
• Compiladores e intérpretes
• Paradigmas de programación
• Tipos de algoritmos
![Page 4: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/4.jpg)
Evaluación del primer corte (que es el 30% de la evaluación total)
50 % examen
50 % tareas y actividades en clase
![Page 5: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/5.jpg)
• Razón de ser
• Computadora
• Programa
• Programador
• Análisis y solución de problemas (Metodología)
• Algoritmo
• Diagrama de flujo
Herramientas (programación estructurada):
Fundamentos algebraicosEstructuras de controlTipos de datos “simples”
Tipos “estructurados” (arreglos, listas, árboles, etc..)
![Page 6: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/6.jpg)
![Page 7: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/7.jpg)
Tipos simples (primitivos): char, integer, float, boolean Elemental
Tipos de Datos Estructurados
Surge la necesidad de almacenar “algo” más elaborado (datos estructurados): palabras, fechas, directorios telefónicos…
Simples o Primitivos(bajo nivel)
Estructurados (alto nivel)
![Page 8: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/8.jpg)
Estructura de datos (ED).- colección caracterizada por su organización y operaciones definidas en la misma.
ED estáticas.- si el tamaño que ocupa en memoria se define antes de la
ejecución del programa y no se puede modificar durante dicha ejecución (arreglos, registros, archivos, etc).
ED dinámicas.- no tienen las restricciones por el espacio en memoria que poseen las estáticas (listas, pilas, colas, árboles, grafos).
![Page 9: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/9.jpg)
Simples v.s. Estructurados
En el tipo de dato simple cada variable representa un elemento, mientras que en el tipo estructurado un identificador (nombre) puede representar múltiples datos individuales , pudiendo cada uno de éstos ser referenciado individualmente.
![Page 10: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/10.jpg)
Arreglo:= Conjunto finito y ordenado de elemento homogéneos.
(Almacena datos del mismo tipo)
(Los datos pueden ser seleccionados individualmente por medio de índices)
![Page 11: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/11.jpg)
Los arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el unidimensional el más simple.
Notación:
a1, a2, . . ., ai, …, an representación matemática de un arreglo unidimensional de n elementos llamado “a”
a[0], a[1] , … , a[i], … , a[n-1] representación en programación de un arreglo unidimensional de n elementos llamado “a” (en general el primer elemento inicia con el índice cero).
El número de elementos del arreglo se denomina rango.
![Page 12: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/12.jpg)
Ejemplo de arreglo llamado Alumnos, con rango de 30 elementos:
1 Hugo
2 Paco
3 Luis
.. ..
i Martín
.. ..
30 Graciela
![Page 13: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/13.jpg)
Consideremos al arreglo X de 8 elementos:
0 14.0
1 12.0
2 8.0
3 7.0
4 6.41
5 5.23
6 6.15
7 7.25
Algunas instrucciones que manipulan al vector X son:
Despliega (X[0])X [4] 45intSuma X[1] + X[3]intSuma intSuma + X[3]X [5] X [5] + 3.5X [6] X [1] + X [2]
![Page 14: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/14.jpg)
Los índices pueden ser enteros, variables o expresiones enteras. Por lo tanto, si i 4,
X [i + 1] representa
X [i -2] representa
X [i + 3] representa
0 14.0
1 12.0
2 8.0
3 7.0
4 6.41
5 5.23
6 6.15
7 7.25
![Page 15: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/15.jpg)
Los índices pueden ser enteros, variables o expresiones enteras. Por lo tanto, si i 4,
X [i + 1] representa 5.23
X [i -2] representa 8.0
X [i + 3] representa 7.25
0 14.0
1 12.0
2 8.0
3 7.0
4 6.41
5 5.23
6 6.15
7 7.25
![Page 16: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/16.jpg)
Operaciones que se pueden realizar con arreglos son:
• Asignación
• Lectura/escritura
• Recorrido (acceso secuencial)
• Actualizar
• Búsqueda
• Ordenación *
![Page 17: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/17.jpg)
Notación (de acuerdo al texto)
tipo
array [lim inf .. lim sup] de <tipo> : nombre_arreglo
Ejemplos:
tipo
array [0 .. 9] de integer : intEdades (arreglo de 10 elementosenteros llamado “intEdades”)
tipo
array [0 .. 49] de float : fltCalificaciones (arreglo de 50 elementos flotantes llamado “fltCalificaciones”)
![Page 18: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/18.jpg)
Asignación
tipo
array [0 .. 4] de integer : intA
intA [4] 29 (asigna el valor de 29 al elemento 5 del arreglo intA)
intA [5] 29 (?)
![Page 19: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/19.jpg)
Asignación / Recorrido
• Se pueden asignar valores a cada elemento del arreglo empleando estructuras repetitivas o incluso de selección:
intI = 0
Haz
intA [intI] 8
intI intI +1
mientras intI <= 4
![Page 20: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/20.jpg)
Lectura/escritura
Leer (intA [3] ) , leer el elemento intA [3] del arreglo intA
Actualización Es la combinación de recorrido con asignación sobre valores previos.
intI = 0
Haz
intA [intI] intI
intI intI +1
mientras intI <= 4
intI = 0
Haz
intA [intI] 8
intI intI +1
mientras intI <= 4
![Page 21: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/21.jpg)
Búsqueda.-Consiste en investigar la existencia de cierto elemento dentro de la colección.intI 0
boolBandera falso
Haz
intA [intI] intI
intI intI +1
mientras intI <= 4
Haz
si (intA [intI] == 3)
entonces Despliega “El 3 está en la posición ”+ intI + ” del arreglo ”
boolBandera verdadero
intI intI +1
mientras intI <= 4
si (boolBandera == falso)
entonces Despliega “El 3 no está en el arreglo ”
![Page 22: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/22.jpg)
Ejercicios empleando arreglos unidimensionales (1):
1.- Inicializar los elementos de dos arreglos de enteros intA e intB de rango 50 convalores secuenciales. Sumar los correspondientes elementos de cada arreglo yalmacenar los resultado en los correspondientes elementos del vector intSuma.
2.- Leer 50 datos enteros proporcionados por el usuario. Determinar y desplegar: Lasuma, el promedio, el mayor , el menor de dichos datos.
3.- Aplicación a la física.- inicializar dos vectores (fltA y fltB) de rango 3 con datosflotantes dados por el usuario. Calcular y desplegar: (a) El vector fltSuma, (b) el vectorfltResta (fltA - fltB), (c) el producto punto entre fltA y fltB, y (d) el vector fltC, siendofltC el producto vectorial fltA X fltB.
Enviar individualmente a [email protected] máximo a las 23:59 hr deldía 2 de septiembre de 2014, con prueba de escritorio.
![Page 23: ARREGLOS I - Instituto Politécnico Nacionalcoatl.cecyt9.ipn.mx/docs/poo/arreglos1.pdfLos arreglos pueden ser unidimensionales (vectores) o multidimensionales (matrices), siendo el](https://reader030.fdocument.pub/reader030/viewer/2022040200/5e38e9769a3c8137567f4b8f/html5/thumbnails/23.jpg)
Ejercicios empleando arreglos unidimensionales (2):
Modelar la entrada de una frase dada por el usuario (el usuario proporciona el rango de dicha frase) como un arreglo de caracteres (ejemplo: “CECyT 9 Juan de Dios Bátiz” se modela como un arreglo de 26 caracteres contando espacios) y determinar.-
1.- Si la frase es un palíndromo (Anita lava la tina).
2.- Número de veces que aparece cada letra (sin distinguir mayúsculas de minúsculas) del alfabeto en la frase.
Enviar individualmente a [email protected] máximo a las 23:59 hr del día 5 de septiembre de 2014, con prueba de escritorio.