dibujar un arbol de navidad con bucles for

Iniciado por epereavi, 14 Diciembre 2009, 14:44 PM

0 Miembros y 1 Visitante están viendo este tema.

epereavi

hola buenas tardes..
bueno primero me presento.
me llamo eric y estoy estudiando 1º de industriales y tengo programacion en java y la profesora nos ha mandado hacer un concurso donde cada uno tenemos que dibujar un arbol de navidad utilizando bucles for...yo ya tengo una base hecha pero me gustaria que alguien me hechase una mano y a ver si me puede decir como mejorarlo un poco..
segun lo que tengo me gustaria ponerle una estrella de estas fugaces que se suelen poner arriba del todo del arbol,algunas bolitas o algo colgando de cada rama y por debajo algo tipo unas cajas como si fuesen regalos...

y eso que a ver si alguien me puede ayudar en como poner esas cosas y como lo hago..


os pongo el codigo que tengo hecho por si le quereis hechar un ojo


/*
* Arbol.java
*
* Created on 5 de diciembre de 2007, 11:48
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/



/**
*
* @author uaxlab
*/
public class Arbol {
       
   
 
 
   public static void main(String[] args) {
        String c = "* ";
       String b = "  ";
       int altura = 20;
       int ancho = 1;
       for (int i = 0; i < altura/4; i++){
           //dibuja los blancos
           for (int k = 0; k < altura - i; k++){
               System.out.print(b);
           }
           for (int j = 0; j < i*2 + ancho; j++){
               System.out.print(c);
           }
           
           System.out.print("\n");
       }
        for (int i = 0; i < altura/4; i++){
           //dibuja los blancos
           for (int k = 0; k < (altura - i) - 2; k++){
               System.out.print(b);
           }
           for (int j = 0; j < i*2 + 5; j++){
               System.out.print(c);
           }
           
           System.out.print("\n");
       }
       for (int i = 0; i < altura/4; i++){
           //dibuja los blancos
           for (int k = 0; k < (altura - i) - 4; k++){
               System.out.print(b);
           }
           for (int j = 0; j < i*2 + 9; j++){
               System.out.print(c);
           }
           
           System.out.print("\n");
       }
       for (int i = 0; i < altura/4; i++){
           //dibuja los blancos
           for (int k = 0; k < (altura - i) - 6; k++){
               System.out.print(b);
           }
           for (int j = 0; j < i*2 + 13; j++){
               System.out.print(c);
           }
           
           System.out.print("\n");
       }
       for (int i = 0; i < altura/4; i++){
           //dibuja los blancos
           for (int k = 0; k < altura -2; k++){
               System.out.print(b);
           }
           for (int j = 0; j < 5; j++){
               System.out.print(c);
           }
           
           System.out.print("\n");
       }
       
       
 
       
   }
   
}



muchas gracias y un saludo

Leyer

conformate con la estrella por que modificarlo es algo tedioso :¬¬

PD: utilizas las etiquetas para code

Código (java) [Seleccionar]
public class Arbol {
public static void main(String[] args) {
        String c = "* ";
        String b = "  ";
        int altura = 20;
        int ancho = 1;
        String n = "/";
        String x= "";
        String y = " ";
        for (int i = 0; i < 1; i++){
        if(i==0){
           for (int k = 0; k < altura - i-1; k++)System.out.print(b);
            System.out.print(" /\\ \n");
            }
            for (int k = 0; k < altura - i-1; k++)
            System.out.print(b);
            System.out.print(""+x+n+""+y+""+y+"\\");x+=" ";y+=" ";
           System.out.print("\n");
        }
        for (int k = 0; k < altura-3; k++)
        System.out.print(b);
        System.out.println("~~~~"+"    "+"~~~~");
        for (int k = 0; k < altura-3; k++)System.out.print(b);
        System.out.println("\\          /");
        for (int k = 0; k < altura-3; k++)System.out.print(b);
        System.out.println("/          \\");
        for (int k = 0; k < altura-4; k++)System.out.print(b);
        System.out.println(" /____    ____\\");
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < altura - i; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + ancho; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
         for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < (altura - i) - 2; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + 5; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < (altura - i) - 4; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + 9; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < (altura - i) - 6; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + 13; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < altura -2; k++){
                System.out.print(b);
            }
            for (int j = 0; j < 5; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
    }
}

epereavi

Cita de: L-EYER en 15 Diciembre 2009, 02:38 AM
conformate con la estrella por que modificarlo es algo tedioso :¬¬

PD: utilizas las etiquetas para code

Código (java) [Seleccionar]
public class Arbol {
public static void main(String[] args) {
        String c = "* ";
        String b = "  ";
        int altura = 20;
        int ancho = 1;
        String n = "/";
        String x= "";
        String y = " ";
        for (int i = 0; i < 1; i++){
        if(i==0){
           for (int k = 0; k < altura - i-1; k++)System.out.print(b);
            System.out.print(" /\\ \n");
            }
            for (int k = 0; k < altura - i-1; k++)
            System.out.print(b);
            System.out.print(""+x+n+""+y+""+y+"\\");x+=" ";y+=" ";
           System.out.print("\n");
        }
        for (int k = 0; k < altura-3; k++)
        System.out.print(b);
        System.out.println("~~~~"+"    "+"~~~~");
        for (int k = 0; k < altura-3; k++)System.out.print(b);
        System.out.println("\\          /");
        for (int k = 0; k < altura-3; k++)System.out.print(b);
        System.out.println("/          \\");
        for (int k = 0; k < altura-4; k++)System.out.print(b);
        System.out.println(" /____    ____\\");
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < altura - i; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + ancho; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
         for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < (altura - i) - 2; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + 5; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < (altura - i) - 4; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + 9; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < (altura - i) - 6; k++){
                System.out.print(b);
            }
            for (int j = 0; j < i*2 + 13; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
        for (int i = 0; i < altura/4; i++){
            for (int k = 0; k < altura -2; k++){
                System.out.print(b);
            }
            for (int j = 0; j < 5; j++){
                System.out.print(c);
            }
            System.out.print("\n");
        }
    }
}



muchas gracias tio