Sök…


Pascal's Triagle Basic Information

Ett av de mest intressanta nummermönstren är Pascal Triangel . Namnet "Pascal's Triangle" uppkallad efter Blaise Pascal , en berömd fransk matematiker och filosof.

I matematik är Pascal's Triangle en triangulär grupp av binomialkoefficienter. Raderna i Pascal's triangel är konventionellt uppräknade med början med rad n = 0 överst (den 0: e raden). Posterna i varje rad är numrerade från vänster med början med k = 0 och är vanligtvis förskjutna i förhållande till siffrorna i de intilliggande raderna.

Triangeln är konstruerad på följande sätt:

  • I den översta raden finns det en unik post 1 som inte är noll.
  • Varje post i varje efterföljande rad konstrueras genom att lägga till numret ovan och till vänster med siffran ovan och till höger, behandla tomma poster som 0.

Till exempel är det initiala numret i den första (eller någon annan) rad 1 (summan av 0 och 1), medan siffrorna 1 och 3 i den tredje raden läggs till för att producera numret 4 i den fjärde raden.

Ekvation för att generera varje post i Pascal triangel:

Pascal Equation

för alla icke-negativa heltal n och alla heltal k mellan 0 och n, inklusive. Denna återfall för binomialkoefficienterna kallas Pascal regel . Pascal triangel har högre dimensionella generaliseringar. Den tredimensionella versionen kallas Pascal's pyramid eller Pascal's tetrahedron, medan de allmänna versionerna kallas Pascal's simplices.

Exempel på Pascal's Triangle:

Pascal's Triangle Exempel

Implementering av Pascal's Triangle i 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 triangel i 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");
}

Produktion

        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


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow