1
resposta

java

Escreva um programa que receba um número X como entrada e exibe no console/terminal uma árvore de altura X. Cada camada deve estar de tal modo que lembre um pinheiro. Exemplo: Entrada 3. Saída:

.......
...#...
..###..
.#####.
...H...
1 resposta

Oi, Edson! Tudo bem?

Para conseguirmos executar esse desafio super interessante em Java, desenhando uma árvore de Natal no console, conforme a altura X passada como parâmetro, podemos usar o seguinte código:

import java.util.Scanner;

public class ArvoreDeNatal {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Digite a altura da árvore: ");
        int altura = scanner.nextInt();

        // Parte da copa da árvore
        for (int i = 0; i < altura; i++) {
            for (int j = 0; j < altura - i; j++) {
                System.out.print(".");
            }
            for (int j = 0; j < i * 2 + 1; j++) {
                System.out.print("#");
            }
            for (int j = 0; j < altura - i; j++) {
                System.out.print(".");
            }
            System.out.println();
        }

        // Parte do tronco da árvore
        for (int i = 0; i < altura - 1; i++) {
            System.out.print(".");
        }
        System.out.print("H");
        for (int i = 0; i < altura - 1; i++) {
            System.out.print(".");
        }
        System.out.println();
        
        scanner.close();
    }
}

Aqui estamos utilizamos um loop para criar a copa da árvore, onde cada linha tem um número crescente de # cercado por pontos . para centralizar. Após a copa, adicionamos o tronco da árvore, que é representado pela letra H.

Espero ter ajudado!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓