Algoritmos
Int funcionRecursiva (int inicio, int limite)
{
Int retorno;
If (inicio > limite)
Retorno = - 1;
Else
If (inicio == limite)
Retorno = 1;
ElseRetorno = inicio * funcionRecursiva(inicio+1, limite);
return retorno;
}
Se pide:
1. Identificar el caso de parada (también llamado caso base o trivial) de la función funciónRecursiva
2.Identificar el caso general de la función funcionRecursiva (explicar el paso de la recursividad)
3.- ¿Qué resultado daría la llamada funcionRecursiva(14,10)
4.- ¿Qué resultado daría la llamadafuncionRecursiva(4,7)
//////////////////////////////////////////////////////////////////////////////////////////////////////////
Describe paso a paso que realizan las funciones recursivas:
A)Otorga tres valores a n
Int sumatoria(int n){
If(n<0)
return 0;
else
If(n>0)
return n+sumatoria(n-1);
else
return 0;}
B) Inserta dos cadenas por ejemplo perro,gato, etc.
estatica Cadenita (Cad cadena, int limIzq, int limDer){
if (limDer == limIzq)
return cadena;
else
return Cadenita (cadena, limDer,limIzq+1) + cadena [limIzq]
}
C) Realiza las corridas de escritorio con varias cadenas (oso, anita, ana, etc.)
static p(Cad c, int limIzq, int limDer){
if (limIzq> limDer)return verdadero;
else
if c [limIzq] = c [limDer]
return p(c, limIzq+1, limDer-1)
else
return falso
}
Respuestas
3.- Si inicio=14limite=10
Retorno = -1;
4.- Si inicio = 4 limite = 7
Retorno = 4 * funcionRecursiva(5,7) = 120
Inicio = 5 limite = 7
Retorno = 5 *funcionRecursiva(6,7) = 30
Inicio = 6 limite=7
Retorno = 6 * funciónrecursiva(7,7) = 6
Inicio =7 limite =7
Retorno =1;
//////////////////////////////////////...
Regístrate para leer el documento completo.