Hallo zusammen,
ich habe an Euch mal eine wichtige Bitte.
Es geht um folgendes, ich versuche mir zur Zeit Java beizubringen und habe von einem Freund den Quelltext zum Pascalschen Dreieck bekommen.
Jedoch verstehe ich diesen Quelltext nicht ganz ;(
Es wäre super wenn ihr mir sagen könntet was in der Zeile passiert. Wäre echt super.
DANKE
ich habe an Euch mal eine wichtige Bitte.
Es geht um folgendes, ich versuche mir zur Zeit Java beizubringen und habe von einem Freund den Quelltext zum Pascalschen Dreieck bekommen.
Jedoch verstehe ich diesen Quelltext nicht ganz ;(
Es wäre super wenn ihr mir sagen könntet was in der Zeile passiert. Wäre echt super.
DANKE
Java:
class pascaldreieck
{
public static void main(String args[])
{int exponent = 10; int b = 0; int spalte = 0; int maxlaenge =0; int aktl =0, leerv =0, leerh =0, test =0, einr=0;
int [][] koef = new int[exponent][];
String [][] kasten = new String [exponent][];
for(int j=0;j<exponent;j++)
//-----Initalizierung Int-Array-----
{
int[] koefx = new int[j+1];
koef[j] = koefx;
}
//-----Initalizierung String-Array-----
for(int j=0;j<exponent;j++)
{
String [] kastenx = new String [j+1];
kasten[j] = kastenx;
}
//-----BefŸllen Int-Array-----
for(int zeile=0; zeile<(exponent); zeile++)
{
koef[zeile][0] =1;
kasten[zeile][0] = String.valueOf(koef[zeile][0]);
koef[zeile][zeile] =1;
kasten[zeile][zeile] = String.valueOf(koef[zeile][zeile]);
}
//-----Berechnung des Int-Arrays-----
for(int zeile=2; zeile<(exponent); zeile++)
{
for(int a=0; a<(zeile-1); a++)
{
spalte++;
b=a+1;
koef[zeile][spalte] = koef[(zeile-1)][a]+koef[(zeile-1)][b];
kasten[zeile][spalte] = String.valueOf(koef[zeile][spalte]);
}
spalte=0;
}
// Leerzeichen anpassen
maxlaenge = kasten[(exponent-1)][((exponent-1)/2)].length();
System.out.print(" * " + maxlaenge + " * ");
System.out.println();
for(int zeile=0; zeile<(exponent); zeile++)
{
for(int j=0; j<(zeile+1); j++)
{
aktl=kasten[zeile][j].length();
leerv=((maxlaenge-aktl)/2)+((maxlaenge-aktl)%2);
String leervs = new String ();
for(int i=0; i<leerv; i++)
{
leervs = leervs + " ";
}
leerh=((maxlaenge-aktl)/2);
String leerhs = new String ();
for(int i=0; i<leerh; i++)
{
leerhs = leerhs + " ";
}
kasten[zeile][j]= leervs + kasten[zeile][j] + leerhs;
}
}
for(int zeile=0; zeile<(exponent); zeile++)
{
einr=(maxlaenge+2)*exponent;
einr=(einr%2)+(einr/2);
einr=einr-((zeile)*(maxlaenge+2)/2);
String einrs = new String ();
for(int i=0; i<einr; i++)
{
einrs = einrs + " ";
}
kasten[zeile][0]= einrs + kasten[zeile][0];
}
//-----Drucken des Arrays-----
for(int zeile=0; zeile<(exponent); zeile++)
{
for(int j=0; j<(zeile+1); j++)
{
System.out.print(kasten[zeile][j] + " ");
}
System.out.println();
}
}
}