Salta al contenido principal
16 / 99
Requisitos de finalización
Recibir una calificación
Abrió: lunes, 23 de marzo de 2026, 00:00
Cierra: domingo, 5 de abril de 2026, 23:59

Ciclos anidados y acumuladores: estructuras complejas en PSeInt

¿Qué son los ciclos anidados?

Imagina que tienes que organizar los asientos de un salón de clases. Primero necesitas recorrer cada fila (eso sería un ciclo), y dentro de cada fila, necesitas revisar cada asiento (eso sería otro ciclo dentro del primero). Esto es exactamente lo que hacen los ciclos anidados: son ciclos dentro de otros ciclos.

En PSeInt, un ciclo anidado se ve así:

 
 
Para fila <- 1 Hasta 5 Con Paso 1 Hacer
    Para columna <- 1 Hasta 4 Con Paso 1 Hacer
        Escribir "Fila: ", fila, " Columna: ", columna
    FinPara
FinPara

En este ejemplo, por cada vuelta del ciclo externo (filas), el ciclo interno (columnas) se ejecuta completamente. Si tenemos 5 filas y 4 columnas, el programa imprimirá 20 combinaciones diferentes.

¿Para qué sirven los ciclos anidados?

Los ciclos anidados son muy útiles para:

  • Trabajar con tablas o matrices
  • Crear patrones de dibujo con asteriscos
  • Generar tablas de multiplicar
  • Procesar datos bidimensionales (como las posiciones en un tablero de ajedrez)

¿Qué son los acumuladores?

Un acumulador es como una alcancía donde vas guardando dinero poco a poco. En programación, es una variable que va sumando (o acumulando) valores a medida que el programa se ejecuta.

Por ejemplo:

 
 
suma <- 0  // Iniciamos el acumulador en 0
Para i <- 1 Hasta 10 Con Paso 1 Hacer
    suma <- suma + i  // Vamos acumulando cada número
FinPara
Escribir "La suma total es: ", suma

Este programa suma todos los números del 1 al 10, y el resultado sería 55.

Tipos de acumuladores

Existen diferentes tipos de acumuladores según lo que necesitemos:

  1. Acumulador de suma: suma valores (suma <- suma + valor)
  2. Acumulador de producto: multiplica valores (producto <- producto * valor)
  3. Contador: cuenta cuántas veces ocurre algo (contador <- contador + 1)

Regla importante: Siempre debes inicializar (darle un valor inicial) a tu acumulador antes del ciclo. Para sumas y contadores usa 0, y para productos usa 1.

Combinando ciclos anidados con acumuladores

Aquí es donde las cosas se ponen interesantes. Podemos usar acumuladores dentro de ciclos anidados para resolver problemas más complejos.

Ejemplo práctico: Calcular la suma de todos los números en una tabla de 3x3

 
 
Algoritmo SumaTabla
    suma <- 0  // Acumulador inicializado
    
    Para fila <- 1 Hasta 3 Con Paso 1 Hacer
        Para columna <- 1 Hasta 3 Con Paso 1 Hacer
            Escribir "Ingrese el número de la posición [", fila, ",", columna, "]"
            Leer numero
            suma <- suma + numero  // Acumulamos cada número
        FinPara
    FinPara
    
    Escribir "La suma total de todos los números es: ", suma
FinAlgoritmo

En este programa, el ciclo externo recorre las filas, el ciclo interno recorre las columnas, y el acumulador va sumando cada número que ingresamos.

Consejos para usar ciclos anidados y acumuladores

  1. Planifica antes de programar: Dibuja en papel cómo debe funcionar tu programa
  2. Usa nombres claros: En lugar de "i" y "j", usa "fila" y "columna" para entender mejor tu código
  3. Prueba con números pequeños: Primero prueba con tablas de 2x2 antes de hacer una de 10x10
  4. Cuida la indentación: Esto te ayuda a ver claramente qué ciclo está dentro de cuál
  5. Revisa tus inicializaciones: No olvides inicializar tus acumuladores antes de los ciclos
Ha alcanzado el 0% de esta lección
0%