En programación, los procedimientos y funciones son herramientas fundamentales para organizar y reutilizar código. Los parámetros son valores que se envían a estos bloques de código para que puedan realizar sus tareas de manera dinámica. En el paso de parámetros permite que los procedimientos y funciones sean más versátiles, ya que pueden trabajar con diferentes datos sin necesidad de modificar su estructura interna.
En este tema, profundizaremos en cómo utilizar parámetros en procedimientos (subprocesos) y funciones, explicaremos el alcance de los parámetros y diferenciaremos entre parámetros por valor y parámetros por referencia.
1. Alcance de los Parámetros
El alcance de un parámetro se refiere a la región del programa donde el parámetro es accesible. En:
- Los parámetros de un procedimiento o función solo son accesibles dentro de ese bloque de código.
- Fuera del procedimiento o función, los parámetros no existen, a menos que se devuelvan como resultado (en el caso de las funciones) o se modifiquen por referencia.
Ejemplo de alcance:
SubProceso MostrarNumero(num)
Escribir "Dentro del SubProceso, num = ", num
FinSubProceso
Proceso EjemploAlcance
Definir num Como Entero
num = 10
MostrarNumero(5) // Aquí num es 5 dentro del SubProceso
Escribir "Fuera del SubProceso, num = ", num // Aquí num sigue siendo 10
FinProceso
- En este ejemplo, el parámetro num dentro del procedimiento es independiente de la variable num fuera del procedimiento.
2. Parámetros por Valor
Los parámetros por valor son una copia del valor original que se pasa al procedimiento o función. Cualquier modificación que se haga al parámetro dentro del bloque de código no afecta al valor original fuera de él.
Características:
• El valor original no se modifica.
• Es útil cuando no queremos alterar los datos originales.
Ejemplo de parámetro por valor:
SubProceso Incrementar(num)
num = num + 1
Escribir "Dentro del SubProceso, num = ", num
FinSubProceso
Proceso EjemploPorValor
Definir num Como Entero
num = 5
Incrementar(num)
Escribir "Fuera del SubProceso, num = ", num
FinProceso
- En este ejemplo, aunque num se incrementa dentro del procedimiento, fuera de él sigue siendo 5.
3. Parámetros por Referencia
Los parámetros por referencia no pasan una copia del valor, sino una referencia a la variable original. Esto significa que cualquier modificación al parámetro dentro del procedimiento o función afectará directamente al valor original.
Características:
• El valor original se modifica.
• Es útil cuando queremos que los cambios realizados dentro del procedimiento o función se reflejen fuera de él.
Ejemplo de parámetro por referencia:
SubProceso IncrementarPorReferencia(num Por Referencia)
num = num + 1
Escribir "Dentro del SubProceso, num = ", num
FinSubProceso
Proceso EjemploPorReferencia
Definir num Como Entero
num = 5
IncrementarPorReferencia(num)
Escribir "Fuera del SubProceso, num = ", num
FinProceso
- En este ejemplo, num se incrementa dentro del procedimiento y también se modifica fuera de él, mostrando 6 en ambos casos.