Ciencia, Algoritmos

Si bien es cierto, Software cómo PSeInt. Son utilizados para aprender algoritmos; también se pueden abarcar ejercicios complejos, que demandan buena gestión de las líneas que escribimos; de lo contrario se tornan bastante tediosas de leer y entender inclusive para el mismo creador. En este artículo analizaremos cómo utilizar SubProcesos en PSeInt. Una forma de además de reutilizar bloques de código, que te ayuda a ahorrar trabajo, también organiza y da facilidad en la lectura de códigos escritos.

Cómo utilizar SubProcesos en PSeInt – Manejando procedimientos

Para empezar, debemos tener presente que los procedimientos, son indispensables en la elaboración de algoritmos, en los que deseamos estructurar las funciones para agilizar el trabajo e imprimir profesionalismo en el código final.

Son muchos los estudiantes que al iniciar con el aprendizaje de algoritmos, piensan que son estructuras para hacer todo más complejo; si piensas así, quizá te des cuenta demasiado tarde cuando tengas un algoritmo bastante complejo de modificar, por la cantidad de líneas de código escritas en él.

¿Cuándo utilizar procedimientos en PSeInt?

Esta es una pregunta muy acertada, la respuesta es: Siempre que te encuentres frente a problemas o ejercicios «Largos», «Complejos». Será de gran ayuda el uso de procedimientos. El uso de esta estructura, te permitirá comprender diferentes partes de tu algoritmo, para ser implementadas en el algoritmo principal.

¿Cómo definir procesos en PSeInt?

La estructura para la definición de procesos en PSeInt, es muy similar a la utilizada en muchos lenguajes de programación de alto nivel, veamos:

SubProceso Ejemplo(parametro1, parametro2..)
 //Acciones..
FinSubProceso

Cómo podemos observar, nuestro subproceso, puede recibir parámetros para su funcionamiento (Qué es lo más normal).

Ejemplo de un algoritmo que utilice SubProcesos en PSeInt.

De este tipo encontrarás muchos, sin embargo recrearemos un ejemplo sencillo que permita la rápida y fácil comprensión:

Caso estudio: Escribir un algoritmo que solicite 3 notas de 2 estudiantes diferentes de las materias: Inglés y español y posteriormente muestre su promedio y diga si gana o pierde las materias, (Gana con mínimo 3).

Bien, a simple vista es un algoritmo sencillo, inicialmente lo abarcaremos sin utilizar Subprocesos, quedaría de la siguiente forma:

Cómo utilizar subprocesos en PSeInt

El código anterior logra lo solicitado, y es totalmente válido. Sin embargo: ¿qué tal si son más estudiantes?, podríamos ocupar un ciclo para, que nos ayude con la solicitud de los datos, pero: ¿Si nos solicitan hacerlo sin un ciclo?, o bien además de ser más estudiantes son más notas, solo imagina lo grande que se podría tu código y tedioso de manipular.

Ahora procuremos mejorarlo haciendo uso de un SubProceso

Cómo utilizar subprocesos en PSeInt

A simple vista nos hemos ahorrado dos líneas de código, sin embargo hemos logrado ahorrarnos un condicional, lo que permitirá hacer cambios en el código de forma mucho más sencilla.

¿Pero podríamos mejorar o acortar aún más este código?

Efectivamente podemos hacer muchas variaciones, pero recuerda que todo debe ir orientado a lo que deseas lograr, un ejemplo sería:

Cómo utilizar subprocesos en PSeInt

Ahora ocupamos solo 22 líneas de código, además añadiendo otro SubProceso, logramos ahorrarnos repetir los datos en la solicitud de las notas para los dos estudiantes, solo lo hacemos una sola vez y mediante una variable indicamos si es el estudiante 1 o 2, a la vez este código permitiría ir añadiendo más estudiantes fácilmente, a comparación del código anterior.

¿Podemos mejorarlo aún más y que el código sea más reducido?

Veamos la siguiente versión del algoritmo:

Ejercicios en PSeInt manejando subprocesos o funciones

Esta versión es mucho más reducida que las dos anteriores y además más fácil de entender, ocupamos un ciclo para evitar pedir todos los datos uno por uno.

Así mismo validamos si gana o pierde en el mismo subproceso, el algoritmo principal solo tiene dos líneas. Podríamos hacer un solo algoritmo sin utilizar un SubProceso; sin embargo debemos tener presente que posiblemente tengamos que escribir algunas líneas de código en el algoritmo principal.

Todo queda a las necesidades de tu ejercicio, debes pensar cual es la mejor manera de solucionar el problema que tienes en frente, si buscas facilidad; lo más probable es que hagas algo similar a la primera versión de este ejemplo, seguramente te dará dolores de cabeza, así que ya sabes cómo utilizar subprocesos en PSeInt impleméntalos, y te ayudará en tus algoritmos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

×