algorithm
Pascals Dreieck
Suche…
Pascals Triagle Grundlegende Informationen
Eines der interessantesten Zahlenmuster ist Pascals Dreieck . Der Name "Pascals Dreieck" wurde nach Blaise Pascal , einem berühmten französischen Mathematiker und Philosophen, benannt.
In der Mathematik ist das Pascalsche Dreieck ein dreieckiges Feld von Binomialkoeffizienten. Die Zeilen des Pascalschen Dreiecks werden üblicherweise beginnend mit der Zeile n = 0 am oberen Rand (der 0-ten Zeile) aufgezählt. Die Einträge in jeder Zeile sind von links beginnend mit k = 0 nummeriert und normalerweise relativ zu den Zahlen in den benachbarten Zeilen versetzt.
Das Dreieck ist wie folgt aufgebaut:
- In der obersten Zeile befindet sich ein eindeutiger Eintrag ungleich Null.
- Jeder Eintrag jeder nachfolgenden Zeile wird durch Addition der Zahl oben und links mit der Zahl oben und rechts gebildet, wobei leere Einträge als 0 behandelt werden.
Zum Beispiel ist die Anfangszahl in der ersten (oder einer beliebigen anderen) Reihe 1 (die Summe von 0 und 1), während die Zahlen 1 und 3 in der dritten Reihe addiert werden, um die Zahl 4 in der vierten Reihe zu erzeugen.
Gleichung, um jeden Eintrag im Pascal-Dreieck zu erzeugen:
für jede nicht negative ganze Zahl n und eine beliebige ganze Zahl k zwischen 0 und n einschließlich. Diese Wiederholung für die Binomialkoeffizienten wird als Pascal-Regel bezeichnet . Das Pascalsche Dreieck weist eine höhere Dimensionierung auf. Die dreidimensionale Version heißt Pascals Pyramide oder Pascals Tetraeder, während die allgemeine Version Pascals Simplices heißt.
Beispiel von Pascals Dreieck:
Implementierung von Pascals Dreieck in C #
public class PascalsTriangle
{
static void PascalTriangle(int n)
{
for (int line = 1; line <= n; line++)
{
int c = 1;
for (int i = 1; i <= line; i++)
{
Console.WriteLine(c);
c = c * (line - i) / i;
}
Console.WriteLine("\n");
}
}
public static int Main(int input)
{
PascalTriangle(input);
return input;
}
}
Pascal-Dreieck in C
int i, space, rows, k=0, count = 0, count1 = 0;
row=5;
for(i=1; i<=rows; ++i)
{
for(space=1; space <= rows-i; ++space)
{
printf(" ");
++count;
}
while(k != 2*i-1)
{
if (count <= rows-1)
{
printf("%d ", i+k);
++count;
}
else
{
++count1;
printf("%d ", (i+k-2*count1));
}
++k;
}
count1 = count = k = 0;
printf("\n");
}
Ausgabe
1
2 3 2
3 4 5 4 3
4 5 6 7 6 5 4
5 6 7 8 9 8 7 6 5