Variablenfelder (3)
Mehrdimensionale Felder
Felder können auch mehr als eine Dimension aufweisen. Das folgende Programm erzeugt eine Einmaleins-Tabelle und gibt sie anschließend auf dem Bildschirm aus.
public class Felder_4_mehrdimensional {
public static void main(String[] args) {
int[][] produkt = new int[21][21];
// Das zweidimensionale Feld "produkt" wird deklariert.
System.out.println("Großes Einmaleins\n");
for (int z=0;z<21;z++) {
// Mit zwei verschachtelten Schleifen
for (int s=0;s<21;s++) {
// werden die Produkte von 0 mal 0
produkt[z][s] = z*s;
// bis 20 mal 20 berechnet.
}
}
for (int n=1;n<20;n++) {
// Aus Platzgründen werden nur die
for (int m=1;m<20;m++) {
// Ergebnisse von 1 mal 1
System.out.format("%4d",produkt[n][m]);
// bis 19 mal 19 ausgegeben
} // (4-stellig formatiert)
System.out.println(); // Zeilenwechsel nach jeder
Zeile
}
}
}
Das Pascalsche Dreieck
Als Beispiel für eine nützliche Anwendung eines zweidimensionalen Felds kann das Pascalsche Dreieck dienen:
Sie kennen (hoffentlich) die binomischen Formel (a+b)2
= 1a2 + 2a1b1 +1b2
Für die dritte Potenz lautet die Formel (a+b)3 =
1a3 + 3a2b1 +
3a1b2 +1b3
und für die vierte Potenz (a+b)4 = 1a4
+4a3b1 +6a2b2
+ 4a1b3 +
1b4
Der französische Mathematiker Blaise Pascal (1623-1662) entdeckte, dass man die rot hervorgehobenen Binomialkoeffizienten mit dem nach ihm benannten Pascal’schen Dreieck ermitteln kann.
Dabei ergibt sich jede Zahl aus der Summe der beiden über ihr stehenden Zahlen.
1
1 1
1 2 1
1
3 3 1
1 4
6 4 1
1 5 10 10
5 1
1 6 15 20 15
6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8
1 und so weiter
Man kann das Dreieck auch in Form einer Tabelle schreiben. Dann lautet die
Regel:
- Schreibe in das erste Feld (Zeile 0, Spalte 0) eine 1.
- Schreibe in die erste Spalte jeder Zeile eine 1
- Schreibe in jedes weitere Feld die Summe aus dem über ihm stehenden Feld und
dessen linkem Nachbarfeld.
Leere Felder werden dabei als Null interpretiert.
0 1 2 3 4 5 6 7 8
0 1 0 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
2 1 2 1 0 0 0 0 0 0
3 1 3 3 1 0 0 0 0 0
4 1 4 6 4 1 0 0 0 0
5 1 5 10 10 5 1 0 0 0
6 1 6 15 20 15 6 1 0 0
7 1 7 21 35 35 21 7 1 0
8 1 8 28 56 70 56 28 8 1
...
Eine Anwendung dieser Tabelle ist die Kombinatorik. Wenn ein Beutel 8
nummerierte Kugeln enthält und ich nehme 3 davon heraus, so ergeben sich für
diesen Griff 56 verschiedene Kombinationsmöglichkeiten.
(In mathematischer Schreibweise heißt das 3 über 8 = 56. Sie finden die Zahl in
Zeile 8 Spalte 3.)
Aufgaben: