Choinka z kolorowymi bombkami
Kolory w konsoli - Podstawy Javy (Java)
Choinka z kolorowymi bombkami: każdy rząd to spacje i coraz więcej gwiazdek (1, 3, 5, ...). Część gwiazdek zamieniamy na bombki w innych kolorach, a pień jest żółty. Każdy znak dostaje swój kolor i reset, więc kolory się nie mieszają. Pomysł pochodzi z artykułu autora o choince w Pythonie (brylka.net).
import java.util.Random;
public class Main {
static final int HEIGHT = 8;
static final String GREEN = "\u001B[32m";
static final String YELLOW = "\u001B[33m";
static final String RESET = "\u001B[0m";
static final String[] BAUBLE_COLORS = {"\u001B[31m", "\u001B[34m", "\u001B[35m", "\u001B[36m", "\u001B[93m"};
static final String[] BAUBLES = {"o", "@", "$"};
public static void main(String[] args) {
Random random = new Random();
for (int row = 0; row < HEIGHT; row++) {
StringBuilder line = new StringBuilder(" ".repeat(HEIGHT - row - 1));
for (int i = 0; i < 2 * row + 1; i++) {
if (random.nextDouble() < 0.15) {
line.append(BAUBLE_COLORS[random.nextInt(BAUBLE_COLORS.length)]);
line.append(BAUBLES[random.nextInt(BAUBLES.length)]).append(RESET);
} else {
line.append(GREEN).append("*").append(RESET);
}
}
System.out.println(line);
}
for (int i = 0; i < 2; i++) {
System.out.println(" ".repeat(HEIGHT - 2) + YELLOW + "###" + RESET);
}
}
}Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Podstawy Javy·Zaloguj się, aby zapisać postęp na koncie.