El esquema de recorrido de una secuencia es el más general de todos los esquemas y consiste en recorrer una secuencia de elementos y tratarlos de uno en uno. Esta secuencia no puede ser infinita, pero no es necesario que conozcas de antemano el número de elementos que tiene.
Tabla de contenidos
Planteamiento del esquema de recorrido
El esquema es un algoritmo muy general, en realidad es una plantilla del problema con una serie de partes, que en el paso siguiente(refinamiento) deberás sustituir por diferentes acciones o expresiones algorítmicas.
La plantilla del esquema de recorrido sería algo así:
algoritmo esquemaRecorrido preparar secuencia inicio tratamiento {cabezal está al principio de la secuencia, todavía no se ha tratado ningún elemento} mientras no fin secuencia hacer {tratado la parte izquierda del cabezal. cabezal no está en la posición extra final} tratar elemento avanzar secuencia {tratado la parte izquierda secuencia} fmientras {secuencia tratada. cabezal final secuencia} tratamiento final falgoritmo
El concepto de cabezal indica la posición en la secuencia. Cuando se habla que el cabezal está en la posición extra, quiere decir que ha llegado más allá del fin de la secuencia.

Refinamiento del esquema
Ahora toca refinar o adaptar el esquema genérico de arriba a tu problema en particular.
Las partes destacadas del esquema de recorrido son las siguientes:
Preparar secuencia
- Preparar secuencia: tienes dos opciones
- Hay más de un elemento: obtén el primer elemento.
- No hay ningún elemento: el cabezal se sitúa en la posición extra.
Ejemplos de preparación de secuencia
Calcular la suma de los números del 1 al 100 o hasta cualquier número. La preparación de la secuencia, en este caso hay más de un elemento, sería colocar el inicio del cabezal en el número 0.
Calcular el factorial de un número. Aquí la preparación de la secuencia sería inicializar el cabezal o variable a 1, porque en el caso que se quiera calcular el factorial de 0, sólo hay un elemento, el algoritmo de entrada ya habría acabado y el factorial de 0 es 1.
Inicio tratamiento
Esta sección corresponde al conjunto de acciones de inicialización, donde das un valor inicial a las variables que serán necesarias para el calculo correspondiente al tratamiento de la secuencia.
Ejemplos de inicio de tratamiento
Calcular factorial de un número. En este caso llevamos a cabo la inicialización de la variable elegida al valor decidido. En este caso factorial = 1;
Calcular los divisores de un número dado. En este caso tienes que crear una variable y inicializarla a 1, porque cualquier número es divisible por 1.
Fin secuencia
El fin de la secuencia es una expresión que es cierta cuando el cabezal está en la posición extra, es decir, más allá del último elemento de la secuencia.
Ejemplos de fin de secuencia
Calcular factorial de un número. El final de la secuencia es cuando el número supera en 1 el número n
. Es decir, i>n
. Pero hay que ver que es una negación , o dicho de otra forma, mientras i
no sea mayor a n
hacer…
Calcular los divisores de un número dado. En este caso el fin de secuencia es cuando el valor del cabezal supera el número dado. Igual que en el caso anterior sería mientras i
no sea mayor a n
. Siendo i
el valor del cabezal en ese momento y n
el número del cual hay que calcular los divisores.
Tratar elemento
Este bloque corresponde a las acciones que procesan un elemento único de la secuencia.
Ejemplo de tratamiento del elemento
Calcular factorial de un número. Las acciones a realizar son guardar en una variable (la llamaré factorial
) el producto del índice donde está el cabezal por el número que contiene en los pasos sucesivos. Recuerda que el factorial de un número es el producto del mismo número por los sucesivos números naturales hasta 1. Ejem. del número 5 es 5x4x3x2x1 = 180.
Avanzar secuencia
Son las acciones que hacen avanzar el cabezal en la secuencia.
Ejemplos de avanzar secuencia
Calcular factorial de un número. En cada iteración de la secuencia, el cabezal avanza un número hasta llegar al número el cual se quiere calcular el factorial. En este caso como tratamos valores naturales el cabezal lo adelantamos en 1 (i + 1
).
Calcular los divisores de un número dado. Sería el mismo caso que en el factorial, sumar un número i + 1
.
Tratamiento final
Esta parte corresponde al conjunto de acciones que te permiten obtener el resultado final. Acabar de hacer un cálculo con el resultado de los procesos intermedios hechos en cada uno de los pasos.
Tanto en el caso del factorial como del calculo de la suma de una cierta cantidad de números no es necesario hacer ningún calculo final.
Metodología
Es importante seguir siempre la misma metodología, es una forma de centrarte en resolver el problema y no en qué pasos has de seguir para llegar a resorverlo, aunque en algunas ocasiones el problema sea tan sencillo que no es necesario ser tan rígidos.
Normalmente siempre se siguen los siguientes pasos:
- Especificar el problema.
- Transformar el problema en un modelo de tratamiento secuencial, encontrar la secuencia que has de tratar.
- Escoger el esquema adecuado que tienes que aplicar.
- Decidir el conjunto de variables necesarias. Muchas veces, además de las necesarias para especificar el algoritmo necesitarás variables intermedias.
- Una vez hayas planteado el esquema general, deberás empezar a refinarlo con expresiones y acciones del lenguaje algorítmico.
Si te ha gustado o te ha aclarado conceptos el contenido de este artículo compártelo en redes sociales para que pueda crecer, ¡Muchas gracias!
Deja una respuesta