0% encontró este documento útil (0 votos)
47 vistas3 páginas

Programacion Procedimental

Hshdbdbdbdbrbbfbfbfbfbbrfbfbfbfbrbfj

Cargado por

MATANE YT
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
47 vistas3 páginas

Programacion Procedimental

Hshdbdbdbdbrbbfbfbfbfbbrfbfbfbfbrbfj

Cargado por

MATANE YT
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

RECURSIVIDAD Y FUNCIONES ESTÁTICAS EN C

Para Rodrigo Paszniuk (2013), recursividad es una técnica en


programación donde una función se llama a sí misma para resolver un
problema. En C, una función recursiva es aquella que se define de
manera que, dentro de su propio cuerpo, se llama nuevamente para
solucionar una parte más pequeña del problema original.

El proceso se utiliza para computaciones repetidas en las que cada


acción se determina mediante un resultado anterior. Se pueden
escribir de esta forma muchos problemas iterativos.

Se deben satisfacer dos condiciones para que se pueda resolver un


problema recursivamente:

1. Caso Base: Es la condición que detiene la recursión, evitando


que la función se llame a sí misma indefinidamente. Sin un caso
base, la recursión continuaría hasta que el programa se quede
sin memoria.
2. Caso Recursivo: Es la parte de la función en la que la función
se llama a sí misma con una versión más simple o pequeña del
problema original.

Ejemplo: Factorial de un número.

(Imagen propia)

Lo que se hace es colocarlas en una pila hasta que la condición de


término se encuentra. Entonces se ejecutan las llamadas a la función
en orden inverso a como se generaron, como si se fueran sacando de
la pila, por tanto, el orden sería algo así:
(Imagen de Proyecto: Sistema de Ayuda Al C.)

Una función estática en C es una función cuyo alcance se limita al


archivo en el que se define. Esto significa que la función no es visible
fuera de ese archivo, incluso si otros archivos del programa intentan
acceder a ella (Uriel Ruelas, 2017).

Según palabras de Vadapalli (2024), esta función cumple con dos


funciones básicas para el lenguaje C:

1. Alcance Interno: Al declarar una función como static, limitas


su visibilidad al archivo de código fuente donde está definida.
Esto es útil para encapsular funciones que no deberían ser
accesibles desde otros archivos del proyecto.
2. Prevención de Colisiones de Nombres: Las funciones
estáticas permiten que diferentes archivos de un proyecto
tengan funciones con el mismo nombre sin causar conflictos, ya
que cada una estará restringida al archivo en que fue definida.

Ejemplo de función estática:


(Imagen de ¿ Para que sirve static en C? )

REFERENCIAS:

Paszniuk, R. (23 de abril, 2013). RECURSIVIDAD en C. Com.py.


Recuperado el 30 de agosto de 2024, de
https://www.programacion.com.py/escritorio/c/recursividad-en-c
Proyecto: Sistema de ayuda al C. (s. f.). Recuperado el 30 de agosto
de 2024, de https://ccia.ugr.es/~jfv/ed1/c/cdrom/cap6/f_cap66.htm

Ruelas, U. (27 de octubre, 2017). Entidades estáticas en C, C++ y


Java. Codingornot.com. Recuperado el 30 de agosto de 2024, de
https://codingornot.com/entidades-estaticas-en-c-c-y-java

Vadapalli, P. (2024, mayo 13). Static function in C. @upgrad; upgrad.


https://www.upgrad.com/tutorials/software-engineering/c-tutorial/stati
c-function-in-c/

¿ Para que sirve static en C? (3 de octubre, 2019). Stack Overflow en


español. Recuperado el 30 de agosto de 2024, de
https://es.stackoverflow.com/questions/297656/para-que-sirve-static-
en-c

También podría gustarte