Autor Tema: ejemplo recursión java piramides de asteriscos  (Leído 42777 veces)

felix

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 34
    • Ver Perfil
ejemplo recursión java piramides de asteriscos
« en: 13 de Abril 2014, 00:43 »
ayuda por fa lo que quiero es una pirámide de asteriscos que apunte hacia arriba yo lo tengo hacia abajo y tiene que ser de forma recursiva este es mi piramide hacia abajo de forma recursiva
Código: [Seleccionar]
    public void piramide(int i,int j)
    {
        if(i>0)
        {
            System.out.print("*");
            piramide(--i,j);
        }else
        {
            if(j>0)
            {
                i=j;
                System.out.println("");
                piramide(--i,--j);
            }
        }
    }
y me da por ejemplo
****
***
**
*
 y esta es mi piramide hacia arriba pero no es de forma recursiva es usando for
y la quiero sin for ni while porfa ayudenme a combertilo a recursivo
Código: [Seleccionar]
    public void piramide()
    {
        for(int i=0;i<5;i++)
        {
            for(int j=0;j<i+1;j++)
            {
                System.out.print("*");
            }
            System.out.println("");
        }
    }
y este me da
*
**
***
****
por ayuda a convertilo a recursivo gracias de antemano
« Última modificación: 13 de Abril 2014, 22:18 por César Krall »

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2074
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:ejemplo recursión java piramides de asteriscos
« Respuesta #1 en: 13 de Abril 2014, 22:20 »
La recursión hay que plantearla siempre con un caso base y un caso que haga evolucionar los parámetros de llamada de forma que sea posible alcanzar el caso base. En este caso el caso base sería que la cadena haya alcanzado la longitud deseada, y la evolución del parámetro se logra incrementando la longitud de la cadena en una unidad en cada ocasión. El código:

Código: [Seleccionar]
/*Ejemplo aprenderaprogramar.com*/
public class ejemploRecursionJava {
    public static void main (String[] Args) {

        System.out.println ("Ejemplo recursión Java");
        piramideRecursiva(4, "*", "*");
       
        System.out.println ("\n\n\nOtro ejemplo:");
        piramideRecursiva( 10, "*", "*");
       
        System.out.println ("\n\n\nOtro ejemplo:");
        piramideRecursiva( 6, "@", "@");
       
    }

    public static void piramideRecursiva (int numeroCaracteres, String cadenaDePartida, String cadenaActual) {

        if (cadenaActual.length() == numeroCaracteres) {
            System.out.println("" + cadenaActual);
        }
        else {
            System.out.println("" + cadenaActual);
            cadenaActual = cadenaActual.concat(cadenaDePartida);
            piramideRecursiva(numeroCaracteres, cadenaDePartida, cadenaActual);
        }
    }
}
Responsable de departamento de producción aprenderaprogramar.com

felix

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 34
    • Ver Perfil
Re:ejemplo recursión java piramides de asteriscos
« Respuesta #2 en: 13 de Abril 2014, 23:04 »
muchas gracias César Krall  me ayudaste bastante  :)

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".