You are on page 1of 2

UNMSM Facultad de Ingeniera Industrial ALGORITMOS Y PROGRAMACION

RECURSIVIDAD Una funcin es recursiva cuando se llama a s misma. En toda funcin recursiva existen 2 partes: a) El caso base que se resuelve sin recursividad. b) La llamada recursiva. Ejemplo:

int factorial( int n ) { if ( n==0 || n==1 ) return 1; else return n * factorial(n-1); }

CASO BASE

LLAMADA RECURSIVA

// Programa que permite ingresar un entero mayor o igual a cero e imprime su // correspondiente factorial, el cual se calcula en forma recursiva. #include <iostream> #include <stdlib.h> using namespace std; int factorial( int n ) { if ( n==0 || n==1 ) return 1; else return n*factorial(n-1); } int main() { int x,f; cout<<"Ingrese un entero positivo: "; cin>>x; f = factorial(x); cout<<"El factorial de "<<x<<" es "<<f<<endl; system("PAUSE"); return 0; } Mag. Hilmar Hinojosa Lazo 1

UNMSM Facultad de Ingeniera Industrial ALGORITMOS Y PROGRAMACION

// Programa que permite ingresar un entero positivo, calcula en forma recursiva e // imprime el correspondiente trmino de la serie de Fibonacci. #include <iostream> #include <stdlib.h> using namespace std; int fibonacci( int t ) { if ( t == 1 || t == 2 ) return 1; else return fibonacci(t-1)+fibonacci(t-2); } int main() { int term, fib; cout<<"Ingrese termino de la serie de Fibonacci: "; cin>>term; fib = fibonacci(term); cout<<"El termino "<<term<<" es "<<fib<<endl; system("PAUSE"); return 0; }

Mag. Hilmar Hinojosa Lazo

You might also like