Sesión 20 · Colecciones de datos
Arreglos unidimensionales o vectores
Hasta ahora una variable almacenaba un dato. Un vector permite guardar varios valores del mismo tipo bajo un solo nombre y acceder a cada elemento mediante una posición o índice. Aprenderás a declarar, capturar, recorrer, buscar y calcular estadísticas básicas sobre un vector.
Pasar de muchas variables a una colección
Crear un vector con nombre, tipo y tamaño.
Acceder sistemáticamente a todas sus posiciones.
Calcular suma, promedio, máximo y mínimo.
Localizar un valor mediante búsqueda secuencial.
cal1, cal2, cal3..., pero después cada operación tendría que escribirse seis veces. Un vector permite recorrerlas con un ciclo.Lo necesario antes de usar vectores
Concepto, índices y recorridos
1. ¿Qué es un vector?
Un vector o arreglo unidimensional almacena varios datos del mismo tipo bajo un solo nombre. Cada dato ocupa una posición identificada por un índice.
2. Convención de índices de esta sesión
3. Declaración y dimensión
La dimensión indica cuántos elementos puede almacenar este vector en nuestro pseudocódigo básico.
4. Acceso a una posición
El índice se coloca entre corchetes. El nombre identifica la colección y el índice identifica un elemento específico.
5. Captura con Para
La variable i recorre cada posición. En lugar de escribir seis instrucciones Leer, reutilizamos la misma operación.
6. Recorrido
Recorrer significa visitar sistemáticamente los elementos. Dentro del recorrido podemos mostrar, sumar, comparar, contar o buscar.
7. Suma y promedio
Para [8,5,9,7,10,6], la suma es 45 y el promedio 7.5.
8. Máximo y mínimo: inicialización segura
Una forma segura es tomar como referencia el primer elemento existente:
Esto funciona incluso si los datos fueran negativos. Inicializar mayor ← 0 podría producir un resultado incorrecto cuando todos los elementos son menores que 0.
9. Búsqueda secuencial
Una búsqueda secuencial compara el valor buscado con cada elemento. En este nivel podemos recorrer el vector completo y utilizar una bandera.
10. Índice fuera de rango
Si el vector tiene seis posiciones bajo nuestra convención 1...6, intentar usar calificaciones[7] no representa un elemento válido. En programación real esto puede producir una excepción, error o comportamiento no válido según el lenguaje.
11. Tamaño ≠ último índice en todos los lenguajes
| Contexto | Tamaño 6 | Índices conceptuales |
|---|---|---|
| Pseudocódigo de esta sesión | 6 elementos | 1,2,3,4,5,6 |
| Java (arreglo tradicional) | 6 elementos | 0,1,2,3,4,5 |
12. Recorrido parcial
No siempre debemos recorrer todo el vector. Después de inicializar máximo y mínimo con la primera posición, podemos comparar desde la segunda porque la primera ya es nuestra referencia.
13. Búsqueda: encontrado y posición
La bandera responde si el valor apareció; la variable posición indica dónde apareció. Si hubiera valores repetidos, el algoritmo anterior conserva la primera posición porque solo actualiza cuando NO encontrado.
14. Vector vs. variables individuales
cal1, cal2, cal3... requieren instrucciones repetidas y dificultan recorridos.
calificaciones[i] permite reutilizar la misma lógica para todas las posiciones.
15. Errores frecuentes
- Recorrer desde 1 hasta 7 un vector de tamaño 6.
- Confundir posición con valor.
- Olvidar inicializar suma.
- Inicializar máximo o mínimo con un valor arbitrario que no funciona para todos los datos.
- Buscar sin inicializar la bandera.
- Usar un rango de índices de otro lenguaje sin adaptar el algoritmo.
Índices, posiciones y límites
¿Válido o fuera de rango?
Corrige el recorrido
Captura y recorrido completo
Construye un vector de seis valores
Ordena conceptualmente el proceso
Completa el pseudocódigo
Suma, promedio, máximo y mínimo
Analizador de vector
Escribe seis números separados por comas.
Prueba de escritorio de máximo y mínimo
Vector: [8, 5, 9, 7, 10, 6]. Partimos con mayor=8 y menor=8.
| i | valor | mayor después | menor después |
|---|---|---|---|
| 2 | 5 | ||
| 3 | 9 | ||
| 4 | 7 | ||
| 5 | 10 | ||
| 6 | 6 |
Detecta una inicialización peligrosa
Búsqueda secuencial
Simulador de búsqueda
Vector fijo: [8, 5, 9, 7, 10, 6]
Predice posiciones
Completa el estado inicial
Algoritmo con vector y prueba de escritorio
Problema: análisis de seis calificaciones
Lista de verificación
Reporte de evidencia
Analiza la evidencia para generar el reporte.