So , der unten gepastete code malt inner shell ein Dreieck dessen spitze nach unten zeigt, funktioniert auch einwandfrei.
Mein Problem ist jetzt: Man soll ein 2tes Dreieck unten dranhängen , so dass es wie eine Sanduhr aussieht.
Ich hab wirklich alles mögliche probiert, for schleife invertiert , neue methoden probiert(z.b komplett neu zeichnen , habe dabei jedoch keine passable möglichkeit gefunden auf die array posi zurückzurechnen(also bei length=5 z.b dass das erste 'x' an line[2] steht)
sofern ich bei obigen dingen keine fehler gemacht habe , bin ich echt verzweifelt
hilfreiche ideen sehr willkommen
???:L
Mein Problem ist jetzt: Man soll ein 2tes Dreieck unten dranhängen , so dass es wie eine Sanduhr aussieht.
Ich hab wirklich alles mögliche probiert, for schleife invertiert , neue methoden probiert(z.b komplett neu zeichnen , habe dabei jedoch keine passable möglichkeit gefunden auf die array posi zurückzurechnen(also bei length=5 z.b dass das erste 'x' an line[2] steht)
sofern ich bei obigen dingen keine fehler gemacht habe , bin ich echt verzweifelt
hilfreiche ideen sehr willkommen
???:L
Code:
public class dreieck
{
public static void main(String args[])
{
int length;
int count = 0;
System.out.println("Wie breit solls werden?");
length = Input.getInt();
String zeile = "";
char line[] = new char[length]; // array stellt eine Zeile dar
for(int i=0;i<line.length;i++) // füllt das array mit 'x'
{
line[i]='x';
}
while(count != length)
{
for(int i=0;i<length;i++) // entfernt nach und nach die 'x' aus dem array
{
if( count != 0 )
{
line[count-1]=' ';
line[line.length-count]=' ';
}
zeile = zeile + line[i];
}
count++; // zählt mehr zeilen als ausgegeben werden (quasi komplett runter - auch die zeilen die noch fehlen)
System.out.println(zeile);
// if(count == (int) ((length/2)+1) )
//{ System.out.println(zeile); zeile = ""; }
zeile = "";
}
}
}