Vous êtes sur la page 1sur 11

ESTRUCTURA DE DATOS

RECURSIVIDAD
-BONILLA JHOVANA
-CONDOR DAVID
13/11/2015

Coloque aqu el nombre de la materia


Nombre de la presentacin

Nombre del profesor "Coloque desde pie de


pgina"

Coloque aqu el nombre de la materia


Nombre de la presentacin

RECURSIVIDAD
QUE ES RECURSIVIDAD?
La recursividad es la propiedad mediante la
Nombre del profesor "Coloque desde pie de
cual un subprograma o rutina
puedepgina"
llamarse a
s mismo.
Utilizando la recursividad, la resolucin de un
problema se reduce a uno esencialmente igual
pero algo menos complejo.
3

Coloque aqu el nombre de la materia


Nombre de la presentacin

POTENCIA
La funcin potencia(b,n), realiza n iteraciones
para poder obtener el valor de b^n. Sin
Nombre del profesor "Coloque desde pie de
pgina"
embargo, es posible optimizarla teniendo
en
cuenta que:
b^n = b^(n/2) b^(n/2) si n es par.
b^n = b^(n1)/2 b^(n1)/2 b si n es impar.
4

Coloque aqu el nombre de la materia


Nombre de la presentacin

Antes de programar cualquier funcin recursiva


es necesario decidir cul ser el caso base y
cul el caso recursivo. Para esta funcin,
tomaremos:
CASO BASE
Nombre del profesor "Coloque desde pie de
pgina"
n = 0 en el que devolveremos 1.
CASO RECURSIVO
Tendr dos partes, correspondientes a los dos
posibles grupos de valores de n.

Coloque aqu el nombre de la materia


Nombre de la presentacin

ALGORITMO
Nombre del profesor "Coloque desde pie de
pgina"

Coloque aqu el nombre de la materia


Nombre de la presentacin

SEGUIMIENTO

Nombre del profesor "Coloque desde pie de


pgina"

Coloque aqu el nombre de la materia


Nombre de la presentacin

IMPLEMENTACION

package potrecursiva;

import javax.swing.JOptionPane;

public class PotenciaRecursiva {

public PotenciaRecursiva() {
super();
}

public int PotenciaRecursiva (int num, int pot){

if(pot==0){
return 1;
}
if(pot%2==0){
pot=PotenciaRecursiva(num,pot/2);
return pot*pot;

}
else{
pot=PotenciaRecursiva(num,(pot-1)/2);
return pot*pot*num;

Nombre del profesor "Coloque desde pie de


pgina"

Coloque aqu el nombre de la materia


Nombre de la presentacin

CLASE APLICACION

package potrecursiva;

import javax.swing.JOptionPane;

public class Aplicacion {

public static void main(String[] args) {


PotenciaRecursiva pot=new PotenciaRecursiva();
int a=Integer.parseInt(JOptionPane.showInputDialog("introduzca base:"));
Nombre
del profesor "Coloque
int b=Integer.parseInt(JOptionPane.showInputDialog("introduzca
potencia:"));
pgina"
JOptionPane.showMessageDialog(null,pot.PotenciaRecursiva(a, b));

desde pie de

Coloque aqu el nombre de la materia


Nombre de la presentacin

RESULTADOS

Nombre del profesor "Coloque desde pie de


pgina"

RESULTADO:

10

Coloque aqu el nombre de la materia


Nombre de la presentacin

BIBLIOGRAFIA
http://www.miprimercodigo.com/2012/04/ejerci
cios-resueltos-de-recursividad-en-java
/
Nombre del profesor "Coloque desde pie de
pgina"
http://
puntocomnoesunlenguaje.blogspot.com/2013/
01/ejemplo-recursividad-sumar-dos-numeros
.html
http://foro.elhacker.net/ejercicios/ejercicios_re
cursivos_en_java_y_sus_soluciones11