Programación modular: funciones y procedimientos en C — declaración, parámetros e invocación

Clasificado en Informática

Escrito el en español con un tamaño de 3,44 KB

Programación modular

De la programación secuencial, el siguiente paso es la programación modular. En la programación modular, los problemas complejos se resuelven mejor utilizando un método descendente (top-down), que usa una estrategia de divide y vencerás para dividir un problema en un conjunto de subproblemas (módulos) más sencillos. Un módulo es cada una de las partes de un programa que resuelve uno de los subproblemas en que se divide el problema complejo original. Esta metodología permite localizar más fácilmente los errores, ya que cada módulo se puede estudiar y probar de forma independiente.

Funciones y procedimientos

Función: Es un segmento independiente de código fuente, diseñado para realizar una tarea específica. Se caracteriza por procesar unos datos (parámetros) de entrada y retornar un valor.
Procedimiento: Es un conjunto de sentencias ordenadas para realizar una tarea que normalmente consiste en operaciones o cambios que se ejercen sobre las variables de entrada al procedimiento. En el lenguaje C, se declara de manera similar a una función que devuelve vacío (void).

Declaración de funciones

tipo_función nombre_función([tipo1 var1, ..., tipoN varN])
{
    [declaración de variables locales]
    [cuerpo de la función: grupo de sentencias]
    [return(valor);]
}
En donde:
  • tipo_función: Tipo de dato que retornará la función.
  • [tipo1 var1, ..., tipoN varN]: Parámetros formales de entrada.
  • [declaración de variables locales]: Variables para procesar datos.
  • [return(valor);]: Valor resultante de la función.

Parámetros

Parámetros: Son canales de comunicación para pasar datos entre programas y subprogramas en ambos sentidos (entrada/salida). Pueden ser:
  • Parámetros o argumentos actuales: Son los que se pasan en la llamada o invocación de la función.
  • Parámetros o argumentos formales: Son los parámetros que se colocan en la cabecera de la función.

Invocación a una función

Desde el programa que invoca:
valor = Nombre_función(p1, p2, ..., pn);
En donde:
  • valor: Es una variable del tipo de dato del retorno de la función.
  • p1, p2, ..., pn: Son los parámetros actuales que se envían a la función.
Ejemplo: redondear = floor(3.455);

Procedimientos

void nombre_procedimiento([tipo1 var1, ..., tipoN varN])
{
    [declaración de variables locales]
    [cuerpo del procedimiento: grupo de sentencias]
}
En donde:
  • void: no retorna valor.
  • [tipo1 var1, ..., tipoN varN]: Parámetros formales de entrada (por valor o por referencia).
  • [declaración de variables locales]: Variables para procesar datos.

Entradas relacionadas: