La programación estructurada es un estilo de programación que organiza el código utilizando solo tres tipos de estructuras básicas:
- Secuencias (instrucciones que se ejecutan una tras otra).
- Alternativas (decisiones como
Si...Entonces...Sino
). - Repetitivas (bucles como
Mientras, Para, o Repetir
).
Este enfoque mejora la claridad, calidad y tiempo de desarrollo de los algoritmos y programas.
Por otro lado, la programación modular divide los programas en pequeñas partes llamadas subprogramas (o subrutinas), como funciones y procedimientos. Estas pequeñas partes resuelven tareas específicas, haciendo el código más fácil de leer, probar y reutilizar.
La idea es dividir un problema complejo en varios problemas más simples hasta que cada uno sea fácil de resolver de manera individual (estrategia de "divide y vencerás").
¿Qué es una subrutina?
En PSeInt, una subrutina es un bloque de instrucciones que realiza una tarea específica de manera independiente del resto del programa.
Se utiliza para organizar mejor el código, evitar repeticiones y hacerlo más fácil de entender y mantener.
Tipos de subrutinas en PSeInt:
Tipo | Característica principal |
---|---|
Función | Subrutinas que devuelven un valor después de ejecutarse. |
Procedimiento | Subrutinas que no devuelven ningún valor, solo realizan acciones. |
¿Por qué usar subrutinas?
- Permiten dividir un problema grande en partes pequeñas y manejables.
- Facilitan la reutilización de código: si necesitas realizar la misma tarea varias veces, puedes llamar a la subrutina en vez de repetir todo el código.
- Mejoran la legibilidad y el orden de tus programas.
- Reducen errores, ya que puedes probar y corregir cada subrutina por separado.
¿Cómo se define una función o procedimiento?
Sintaxis básica:
Funcion [VariableDeRetorno <-] NombreDeLaFuncion ( Argumentos )
// Instrucciones
FinFuncion
- Si es función: Indica qué variable se devuelve usando
<-
. - Si es procedimiento: No es necesario devolver ningún valor.
También se puede usar SubProceso
o SubAlgoritmo
en vez de Funcion
.
Ejemplo:
Funcion mayor <- ObtenerMayor(num1, num2)
Definir mayor Como Entero;
Si num1 > num2 Entonces
mayor <- num1;
Sino
mayor <- num2;
FinSi
FinFuncion
Y en el programa principal:
Proceso Principal
Definir a, b, resultado Como Entero;
Escribir "Ingrese el primer número:";
Leer a;
Escribir "Ingrese el segundo número:";
Leer b;
resultado <- ObtenerMayor(a, b);
Escribir "El número mayor es: ", resultado;
FinProceso