next up previous contents
Nächste Seite: Eingabefehler abfangen Aufwärts: Eingabe Vorherige Seite: Häufigkeitsanalyse   Inhalt

Das Pascal'sche Dreieck

Das so genannten Pascal'sche Dreieck wird bei der Berechnung der Binomialkoeffizienten (also bei Berechnungen von $(a + b)^n$) eine Rolle. Für ``beliebig hohes'' $n$ sollen diese Koeffizienten berechnet werden:

n = 4

0:                              1
1:                          1       1       
2:                      1       2       1
3:                  1       3       3       1       
4:              1       4       6       4       1
==========================---------------------------------
n = 11

0:                                                      1
1:                                                  1       1       
2:                                              1       2       1
3:                                          1       3       3       1       
4:                                      1       4       6       4       1
5:                                  1       5       10      10      5       1       
6:                              1       6       15      20      15      6       1
7:                          1       7       21      35      35      21      7       1       
8:                      1       8       28      56      70      56      28      8       1
9:                  1       9       36      84      126     126     84      36      9       1       
10:             1       10      45      120     210     252     210     120     45      10      1
11:         1       11      55      165     330     462     462     330     165     55      11      1       
==========================---------------------------------
n =

Zur Berechnung der einzelnen Koeffizienten kann man die Eigenschaft verwenden, dass ein Koeffizient die Summe der beiden unmittelbar über ihn stehenden Zahlen ist. Dann kann beispielsweise der folgende Algorithmus für ein zweidimensionales Array verwendet werden:

    public static void berechnen (int zahl) {
        int dreieck[][] = new int[zahl+2][zahl+1];
        dreieck[0][0]=1;
        for (int i=1;i<=zahl+1;i++) {
            dreieck[i][0]=1;
            for (int j=1;j<i;j++) {
                dreieck[i][j]=dreieck[i-1][j-1]+dreieck[i-1][j];
            }
        }
    }

Damit auch verschieden große Zahlen gut formattiert ausgegeben werden können, verwendet man neben Zeilenschaltungen (Steuerzeichen \n) Tabulatoren (Steuerzeichen \t) und Leerzeichen.



Alfred Nussbaumer 2003-02-10