elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
27 Mayo 2012, 23:44  


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  recursividad
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: recursividad  (Leído 1,254 veces)
trueno_dp

Desconectado Desconectado

Mensajes: 3


Ver Perfil
recursividad
« en: 15 Junio 2011, 20:18 »

Hola, no sé si estoy en el foro adecuado, pero estoy liao con java y la recursividad m mata, tengo que encontrar los divisores de un entero de forma recursiva y no tengo ni idea, tengo echo algo, pero vamos que no m funcion, a ver si alguien me puede ayudar gracias.


 public static int recursividad(int numero){
   
     if(numero>2)
     {
       
        return 0;
     }else
     {
   
      
       return recursividad(numero%numero-1);
    }
 
  }


En línea
bjpenn

Desconectado Desconectado

Mensajes: 108



Ver Perfil WWW
Re: recursividad
« Respuesta #1 en: 15 Junio 2011, 22:23 »

espero que te sirva es orientado a objetos pero lo podrias cambiar el code
a recursividad vale bye
Código:
public ArrayList<Integer> divisores(int numero){
    int cociente=1;
    int copia= numero/2;
   
   ArrayList<Integer>  arreglo= new ArrayList<Integer> ();
       while(cociente<= copia){
        if(copia%cociente==0){
            arreglo.add(cociente);
        }
        cociente++;
        }
        arreglo.add(numero);
    return arreglo;
    }


« Última modificación: 15 Junio 2011, 22:51 por bj Wilson A » En línea

lo importante no es si haz caido si no es si puedes  levantarse
bjpenn

Desconectado Desconectado

Mensajes: 108



Ver Perfil WWW
Re: recursividad
« Respuesta #2 en: 15 Junio 2011, 22:50 »

solo ve el caso base y la parte recursiva
En línea

lo importante no es si haz caido si no es si puedes  levantarse
trueno_dp

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: recursividad
« Respuesta #3 en: 16 Junio 2011, 00:07 »

pffff no me entero, perdona!!!
Gracias de todas maneras
En línea
barbieturico

Desconectado Desconectado

Mensajes: 29


Ver Perfil
Re: recursividad
« Respuesta #4 en: 16 Junio 2011, 09:20 »

Lo primero, la condición para que una función sea recursiva es que se llame a sí misma.
Para hacer lo que dices es bastante fácil, aquí lo tienes hecho con recursividad:

Código
public class Test {
   public static java.util.List<Integer> divisores = new java.util.ArrayList<Integer>();
   public static void recursivo(int numero, int i)   {
           if(i>0 && numero%i==0) {
               divisores.add(new Integer(i));
               System.out.println(i);
           }
           i++;
           if(i<=numero) Test.recursivo(numero, i);
   }
   public static void main(String[] args) throws IOException {
           Test.recursivo(1125,1);
   }
}
 
« Última modificación: 16 Junio 2011, 09:56 por barbieturico » En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
recursividad en c
Programación C/C++
kmorfo 8 814 Último mensaje 28 Julio 2006, 08:04
por Cobac
Recursividad
Java
rjrn 8 4,739 Último mensaje 17 Marzo 2009, 19:33
por weirdtyping
Recursividad
Programación C/C++
exec.- 10 1,148 Último mensaje 14 Abril 2009, 19:55
por Eternal Idol
recursividad
Ejercicios
Choclito 0 1,371 Último mensaje 12 Mayo 2009, 04:47
por Choclito
recursividad « 1 2 »
Programación C/C++
andaluz 15 2,238 Último mensaje 17 Marzo 2010, 23:54
por Didacso
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines