text-it Weihnachtsgimmick
1. Einfach nachfolgenden Code in einen JAVA Editor kopieren – z.B. Online Compiler: jdoodle.com
2. Compiler ausführen (Execute) und schon leuchtet das Weihnachtsbäumchen in den Ergebnissen auf.
3. Bäumchen in eine Word-Datei kopieren, Schrift auf Lucida Console (9 pt) ändern und weiterschmücken.
Tipp für Fortgeschrittene: text-it durch Ihren (Firmen-)Namen ersetzen (7 Zeichen) – gleich wird es persönlicher.
Tipp für Tüftler: Für die kürzere, längere oder zusammengesetzte Eingabe von Namen Zeile 8 fixen.
Frohes Schaffen!
public class Weihnachtskarte {
private static int maxWidth = 1;
public static void main(String[] args) {
int size = 66;
int treeSize = 0;
String greeting = "text-it wünscht frohe Weihnachten";
for (int lineNum = 0; lineNum < size / 2 + 7; lineNum++) {
if (lineNum < size / 2) {
String greetingText = greeting.substring(0, size / 2 - lineNum);
System.out.print(greetingText);
System.out.print('/');
treeSize = printMiddle(size, size / 2 - lineNum, treeSize);
System.out.print('\\');
System.out.print(greetingText);
} else {
if (lineNum == size / 2) {
treeSize = -1;
}
String greetingText = greeting.substring(0, lineNum + 1 - size / 2);
System.out.print(greetingText);
System.out.print('\\');
treeSize = printMiddle(size, lineNum + 1 - size / 2, treeSize);
System.out.print('/');
System.out.print(greetingText);
}
System.out.println();
}
}
private static int printMiddle(int size, int sideLength, int treeSize) {
int middlePart = size - 2 * sideLength + 1;
if (treeSize == 0) {
if (middlePart == 9) {
treeSize = 1;
}
} else if (treeSize > 0) {
treeSize += 2;
}
if (treeSize == 0) {
printMiddleNothing(middlePart);
} else if (treeSize > 0) {
printMiddleNothing((middlePart - treeSize) / 2);
for (int i = 0; i < treeSize; i++) {
if (Math.random() > 0.95) {
System.out.print('*');
} else {
System.out.print('#');
}
}
printMiddleNothing((middlePart - treeSize) / 2);
}
if (treeSize < 0) {
if (treeSize >= -2) {
printMiddleNothing((middlePart - 3) / 2);
System.out.print("|||");
printMiddleNothing((middlePart - 3) / 2);
treeSize--;
} else if (treeSize == -5) {
String greetings = "Das text-it Team wünscht frohe Weihnachten!";
printMiddleNothing((middlePart - greetings.length()) / 2);
System.out.print(greetings);
printMiddleNothing((middlePart - greetings.length()) / 2);
treeSize--;
} else {
printMiddleNothing(middlePart);
treeSize--;
}
}
return treeSize;
}
private static void printMiddleNothing(int length) {
for (int i = 0; i < length; i++) {
System.out.print(' ');
}
}
}
Stand: 12/2021