/*
Bald ist Winter, und hoffentlich wird bald der 
erste Schnee fallen. Sie sollen diesem Tag 
vorgreifen und schon jetzt Schneeflocken auf 
den Bildschirm zaubern.

Aufgabe: Schreiben Sie ein Java-Programm, das 
den Benutzer zunächst auffordert, eine Zahl 
größer gleich 0 einzugeben und das anschließend 
eine entsprechend große Schneeflocke der 
folgenden Form auf den Bildschirm ausgibt:

Größe = 4:


  \   |   /
   \  |  /
    \ | /
     \|/
  ----o----
     /|\
    / | \
   /  |  \
  /   |   \

*/

void main() {
	int groesse = readInt("Groesse (>= 0):");
	while (groesse < 0) {
		System.out.println("Falsche Eingabe!");
		groesse = readInt("Groesse (>= 0):");
	}

	zeichneObereFlocke(groesse);
	zeichneMitte(groesse);
	zeichneUntereFlocke(groesse);
}

void zeichneObereFlocke(int groesse) {
	for (int r=0; r<groesse; r++) {
		zeichneZeichen(' ', r);
		System.out.print('\\');
		zeichneZeichen(' ', groesse-r-1);
		System.out.print('|');
		zeichneZeichen(' ', groesse-r-1);
		System.out.println('/');
	}
}

void zeichneMitte(int groesse) {
	zeichneZeichen('-', groesse);
	System.out.print('o');
	zeichneZeichen('-', groesse);
	System.out.println();
}

void zeichneUntereFlocke(int groesse) {
	for (int r=0; r<groesse; r++) {
		zeichneZeichen(' ', groesse-r-1);
		System.out.print('/');
		zeichneZeichen(' ', r);
		System.out.print('|');
		zeichneZeichen(' ', r);
		System.out.println('\\');
	}
}

void zeichneZeichen(char zeichen, int anzahl) {
	for (int a = 0; a < anzahl; a++) {
		System.out.print(zeichen);
	}
}
