Recursividad c++

Páginas: 2 (292 palabras) Publicado: 28 de noviembre de 2013
Recursividad 

Ing. Ernesto González Cárdenas

Definición 
Se  dice  que  una  función  es  recursiva 
cuando se define en función de si misma. 
No todas la funciones pueden llamarse a si mismas, 
deben 
estar 
diseñadas 
especialmente  para  que  sean  recursivas, 
de  otro  modo  podrían  conducir  a  ciclos 
infinitos,  o  a  que  el  programa  termine 
inadecuadamente. Recursividad en C++ 
Cuando  se  llama  a  una  función,  se  crea  un 
nueva  instancia  de  variables  locales,  si  la 
función  hace  una  llamada  a  si  misma,  se guardan sus variables y parámetros en la pila, y 
la  nueva  instancia  de  la  función  trabajará  con 
su propia copia de las variables locales, cuando 
esta  segunda  instancia  de  la  función  retorna, 
recupera  las variables  y  los  parámetros  de  la 
pila y continua la ejecución en el punto en que 
había sido llamada.

Factorial 
El  factorial  se  simboliza  como  n!,  se  lee  como "n factorial", y la definición es: 
n! = n * (n­1) * (n­2) * ... * 1 
No  se  puede  calcular  el  factorial  de  números 
negativos, y el factorial de  cero  es  1, de  modo 
que  una  función  bien  hecha  para cálculo  de 
factoriales  debería  incluir  un  control  para  esos 
casos.

Ejemplo Calculo del Factorial 
#include  
/* Función recursiva para cálculo de factoriales */ int factorial(int n) 

if(n  1) 
return n*factorial(n­1); 
/* Recursividad */ 
return 1; /* Condición de terminación, n == 1 */ 

void main() 

int x, val=1; 
printf("Dame el numero del factorial: "); scanf("%i",&x); 
printf("%i",factorial(x)); 
getch(); 
}

Ejercicio # 1  Acumulador 
Desarrollar un programa que calcule un contador que 
se incremente en una unidad. 
y=y+1 Utilizando un algoritmo recursivo

Acumulador recursivo 
#include  
int sumauno(int n, int valor);  /* funcion recursiva */ 
void main() 
{  int x, val=1; 
printf("Dame el valor de x: "); ...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguaje En C, Recursividad
  • Programación En C
  • RECURSIVIDAD EN C vinicio jimenez macias
  • recurso de inconformidad imss C 088001561
  • Calculadora En C (Notacion Recursiva Polaca)
  • C Mo Se Transforman Los Recursos Naturales
  • C, T Y REDISTRIBUCIÓN DE LOS RECURSOS Y RIESGOS
  • RECURSIVIDAD EN C++

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS