Pascals trekantformel med eksempler

⚡ Smart oppsummering

Pascals trekant er en trekantet tallordning der hver verdi er lik summen av de to tallene rett over den, og avslører dype mønstre innen kombinatorikk, binomiale utvidelser og sannsynlighet som har fascinert matematikere i århundrer.

  • 🔺 Struktur: Hver rad begynner og slutter med 1, med indre verdier dannet ved å legge sammen de to tallene ovenfor.
  • 📐 Binomiallenke: Rad n kolonne k er lik binomialkoeffisienten C(n, k), noe som gjør trekanten til et visuelt oppslag for kombinasjoner.
  • 🔢 Skjulte mønstre: Radsummer er lik potenser av 2, og diagonalsummer genererer Fibonacci-sekvensen.
  • Tre metoder: Du kan bygge den ved hjelp av tidligere rader, ved å beregne binomiale koeffisienter eller ved en iterativ snarvei med modifisert koeffisient.
  • 🧪 Bruksområder: Brukes i algebra, sannsynlighet, informatikk og kombinatoriske bevis på tvers av moderne læreplaner.

Hva er Pascals trekant?

Pascals trekant er en trekantet tallrekke som følger et enkelt mønster basert på raden over. Den ble popularisert av den franske matematikeren Blaise Pascal på 17-tallet. Trekanten begynner med en enkelt «1» øverst, og hver påfølgende rad starter og slutter også med «1».

Pascals trekant

Utover sin elegante form, koder Pascals trekant for dype matematiske sammenhenger. Den er nært knyttet til binomialsetningen, kombinatorisk telling og sannsynlighet, og det er derfor den dukker opp i algebra-, statistikk- og informatikkklasserom over hele verden.

Pascals trekanthistorie

Selv om trekanten er oppkalt etter Blaise Pascal, er den århundrer eldre enn ham. Den kinesiske matematiske teksten «De ni kapitlene om matematisk kunst» inneholder et av de tidligste kjente eksemplene, og viser mange av de samme mønstrene vi bruker i dag.

Persisk matematiker Al-Karaji og indisk lærd Pingala utforsket også lignende matriser. Pascal formaliserte trekantens egenskaper i sin avhandling fra 1654 «Traité du triangle arithmétique», som ga strukturen sitt moderne navn i vestlig matematikk.

Konstruksjon av Pascals trekant

Det er enkelt å konstruere Pascals trekant. Den eneste regelen man må huske er at hver rad starter og slutter med 1, og alle andre tall bygges fra raden over.

For enhver rad r og kolonne c er verdien lik summen av tallene i kolonne c-1 og c i rad r-1.

Her

  • r = 3, 4, 5, …
  • n og c = 2, 3, 4, …, r⁻¹.

Her er trinnene for å bygge Pascals trekant:

Trinn 1) Begynn med å fylle ut de to første radene.

Konstruksjon av Pascals trekant

Trinn 2) Det andre elementet i den tredje raden er summen av det første og andre tallet i den andre raden.

Konstruksjon av Pascals trekant

Trinn 3) Den fjerde raden begynner med «1». Det andre tallet er 3, som er summen av 1 og 2 (uthevet i blått).

Bildet nedenfor viser hvordan du fyller den fjerde raden:

Konstruksjon av Pascals trekant

Trinn 4) Den femte raden består av fem tall. Vi kjenner allerede mønsteret for å fylle ut rader fra de tidligere trinnene.

Konstruksjon av Pascals trekant

Pascals trekantformel – binomial koeffisient

En binomial koeffisient teller antall måter å velge et delsett av k elementer fra en samling av n elementer. Den skrives vanligvis som «C(n, k)» eller «n velger k».

Den binomiale koeffisienten er definert som:

Pascals trekantformel - binomial koeffisient

Symbolet «!» angir fakulteten til et tall.

n! = n.(n-1).(n-2)…3.2.1

For eksempel,

5! = 5.4.3.2.1

= 120

Så, C(5, 3) eller «5 velg 3» = 5! / 3!(5-3)!

= 120/12

= 10

Metode 1: Bygge Pascals trekant ved hjelp av forrige rad

Fremgangsmåten her speiler hvordan vi tegnet trekanten manuelt. Anta at vi vil generere Pascals trekant med opptil syv rader.

Fremgangsmåten for å gjøre det er som følger:

Trinn 1) Start den øverste raden med «1».

Trinn 2) For rad «r» vil elementet «c» være summen av kolonne «c-1» og kolonne «c» i rad «r-1».

Trinn 3) Det første og siste tallet i hver rad vil alltid være «1».

Ved å følge disse tre enkle trinnene kan vi systematisk konstruere hele trekanten.

C++ Code av Pascals trekant ved forrige rad

#include <bits/stdc++.h>
using namespace std;
void printRow(int n)
{
  int numbers[n][n];
  for (int row = 0; row < n; row++)
  {
    for (int col = 0; col <= row; col++)
    {
      if (col == 0 || col == row)
      {
        numbers[row][col] = 1;
      }
      else
      {
        numbers[row][col] = numbers[row - 1][col - 1] + numbers[row - 1][col];
      }
      cout << numbers[row][col] << "\t";
    }
    cout << endl;
  }
}
int main()
{
  int n;
  cout << "How many rows: ";
  cin >> n;
  printRow(n);
}

Utgang:

How many rows: 7
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

Python Code av Pascal-trekantformelen ved forrige rad

def printRow(n):
    numbers = [[0 for row in range(n)]
               for col in range(n)
               ]
    for row in range(len(numbers)):
        for col in range(0, row+1):
            if row == col or col == 0:
                numbers[row][col] = 1
            else:
                numbers[row][col] = numbers[row-1][col-1]+numbers[row-1][col]

            print(numbers[row][col],end="\t")
        print("\n")
n = int(input("How many rows: "))
printRow(n)

Pascals trekanteksempel:

How many rows: 7
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

Kompleksitetsanalyse

A todimensjonal matrise brukes i denne implementeringen. Gitt at N er antall rader i Pascals trekant, krever dette N2 enhetsrom. Derfor er romkompleksiteten O(N2).

Funksjonen bruker to nestede løkker, som hver kjører opptil «N» ganger. Så tidskompleksiteten er også 2), eller kvadrert tidskompleksitet.

Metode 2: Bygge Pascals trekant ved å beregne binomialkoeffisienten

Vi kan utlede tallene i Pascals trekant direkte ved hjelp av binomiale koeffisienter. Diagrammet nedenfor illustrerer forholdet:

Å bygge Pascals trekant ved å beregne binomialkoeffisienten

Her er trinnene for å bygge Pascals trekant ved å beregne binomialkoeffisienten:

Trinn 1) Den øverste raden er C(0, 0). Ved å bruke formelen ovenfor er C(0, 0) = 1, fordi 0! = 1.

Trinn 2) For rad «i» vil det være totalt «i»-elementer. Hvert element beregnes som C(n, r), der n er i-1.

Trinn 3) Gjenta trinn 2 for så mange rader av Pascals trekant som du vil generere.

C++ Code Pascals trekant ved hjelp av binomialkoeffisient

#include <iostream>
using namespace std;
int factorial(int n)
{
    int result = 1;
    for (int i = 1; i <= n; i++)
    {
        result *= i;
    }
    return result;
}
int binomialCoefficient(int n, int r)
{
    int result = 1;
    if (r > n)
    {
        return -1;
    }
    result = factorial(n) / (factorial(r) * factorial(n - r));
    return result;
}
void printPascalTriangle(int row)
{
    for (int i = 0; i <= row; i++)
    {
        for (int j = 0; j <= i; j++)
        {
            cout << binomialCoefficient(i, j) << "\t";
        }
        cout << endl;
    }
}
int main()
{
    int n;
    cout << "Enter row number: ";
    cin >> n;
    printPascalTriangle(n);
}

Utgang:

Enter row number: 9
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
1	9	36	84	126	126	84	36	9	1

Python Code Pascals trekant ved hjelp av binomialkoeffisient

def factorial(n):
    result = 1
    for i in range(1,n+1):
        result*=i
    return result
def binomialCoefficient(n,r):
    result =1
    if r>n:
        return None
    result = factorial(n) / (factorial(r) * factorial(n - r))
    return int(result)
def printPascalTriangle(row):
    for i in range(row+1):
        for j in range(i+1):
            print(binomialCoefficient(i, j), end="\t")
        print()
# print(binomialCoefficient(3, 2))
n = int(input("Enter row number: "))
printPascalTriangle(n)

Pascals trekanteksempel:

Enter row number: 8
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

Kompleksitetsanalyse

Tre løkker brukes i denne implementeringen: én for å beregne binomialkoeffisienten og to til for å iterere gjennom hver rad og kolonne. Med hensyn til antall rader, kjører alle tre løkkene opptil «n» ganger. Følgelig er den totale tidskompleksiteten O(n3).

Romkompleksiteten er konstant fordi vi ikke lagrer noen mellomresultater. Programmet beregner hvert element underveis og skriver det ut i en rad, slik at romkompleksiteten reduseres til O (1).

Metode 3: Bygg Pascals trekant med modifisert binomial koeffisient

I den forrige teknikken brukte vi formelen for binomialkoeffisient for å beregne hvert element. Den modifiserte tilnærmingen utleder C(n, r) direkte fra C(n, r-1), noe som reduserer arbeidet med én størrelsesorden.

Her er trinnene for å bygge Pascals trekant med den modifiserte binomiale koeffisienten:

Trinn 1) Start den første raden med «1».

Trinn 2) Beregn C(n, r), der «n» er radnummeret og «r» er kolonneindeksen. Tilordne denne verdien til en variabel C.

Trinn 3) For å beregne den neste koeffisienten, bruk C * (n – k) / k. Tildel denne nye verdien tilbake til C.

Trinn 4) Fortsett trinn 3 til «k» når slutten av raden. Øk k med én etter hver iterasjon.

C++ Code for Pascals trekant med modifisert binomialkoeffisient

#include <bits/stdc++.h>
using namespace std;
void printpascalTriangle(int n)
{
  for (int row = 1; row <= n; row++)
  {
    int previous_coef = 1;
    for (int col = 1; col <= row; col++)
    {
      cout << previous_coef << "\t";
      previous_coef = previous_coef * (row - col) / col;
    }
    cout << endl;
  }
}

int main()
{
  int n;
  cout << "How many rows: ";
  cin >> n;
  printpascalTriangle(n);
}

Utgang:

How many rows: 5
1
1       1
1       2       1
1       3       3       1
1       4       6       4       1

Python Code for Pascals trekant med modifisert binomialkoeffisient

def printpascalTriangle(n):
    for row in range(1, n+1):
        previous_coef = 1
        for col in range(1, row+1):
            print(previous_coef, end="\t")
            previous_coef = int(previous_coef*(row-col)/col)
        print()
n = int(input("How many rows: "))
printpascalTriangle(n)

Pascals trekantmønsterutgang:

How many rows: 5
1
1       1
1       2       1
1       3       3       1
1       4       6       4       1

Kompleksitetsanalyse

Implementeringen bruker to løkker, som hver kjører maksimalt «n» ganger, hvor «n» er antall rader i trekanten. Så tidskompleksiteten er 2), kvadratisk tid.

Når det gjelder romkompleksitet, trenger vi ikke noen array for lagring. Vi bruker bare én variabel for å beholde den forrige binomiale koeffisienten, så vi trenger bare ett ekstra rom. Romkompleksiteten er derfor O (1).

Anvendelse av Pascals trekant

Her er noen praktiske anvendelser av Pascals trekant:

Binomiale utvidelser: Koeffisientene til enhver binomial utvidelse kan leses direkte fra Pascals trekant. Her er et eksempel:

(x + y)0 1
(x + y)1 1.x + 1.y
(x + y)2 1x2 + 2xy + 1y2
(x + y)3 1x3 + 3x2og + 3xy2 + 1y3
(x + y)4 1x4 + 4x3og + 6x2y2 + 4xy3 + 1y4

Beregne kombinasjoner: Elementene i Pascals trekant korresponderer direkte med binomiale koeffisienter. Hvis du for eksempel har 6 baller og vil velge 3, er svaret 6C3Du finner den verdien i det tredje elementet i den sjette raden i Pascals trekant.

Sannsynlighet: Pascals trekant er mye brukt til å beregne sannsynligheter i myntkast, terningproblemer og andre kombinatoriske hendelser der hvert utfall tilsvarer en binomialfordeling.

Interessante fakta om Pascals trekant

Her er noen fakta du vil finne interessant om Pascals trekant:

  • Summen av alle elementene i en hvilken som helst rad er alltid en potens av 2.

Fakta om Pascals trekant

  • De diagonale summene av radene genererer Fibonacci-sekvensen.

Fakta om Pascals trekant

  • Hver rad tilsvarer koeffisientene i utvidelsen av (a+b)n.
  • Hvis du bare skyggelegger oddetallene, danner den resulterende figuren Sierpinski-trekantfraktalen.

Spørsmål og svar

Selv om trekanten var oppkalt etter Blaise Pascal, som formaliserte den i 1654, var den kjent i Kina, India og Persia århundrer tidligere. Matematikere som Jia Xian, Yang Hui, Pingala, og Al-Karaji studerte lignende matriser lenge før Pascal.

Hver oppføring i Pascals trekant er lik en binomisk koeffisient C(n, k). Tallene i rad n gir koeffisientene til (a + b) opphøyd i n, noe som gjør trekanten til en rask oppslagstabell for binomiske utvidelser.

Summen av alle tallene i rad n i Pascals trekant er 2 opphøyd i n. For eksempel inneholder rad 4 1, 4, 6, 4, 1, som summerer seg til 16, nøyaktig 2 opphøyd i fjerde potens.

Hvis du legger sammen tallene langs de grunne diagonalene i Pascals trekant, danner de resulterende summene Fibonacci-sekvensen: 1, 1, 2, 3, 5, 8, 13, og så videre. Dette er et av trekantens mest elegante skjulte mønstre.

Pascals trekant modellerer sannsynligheter for hendelser med to like sannsynlige utfall, som myntkast. Rad n viser hvor mange måter du kan få k krone i n kast, noe som direkte mater den binomiale sannsynlighetsfordelingen.

AI-systemer bruker binomiale koeffisienter hentet fra Pascals trekant for funksjonsvalg, sampling og kombinatorisk optimalisering. Forsterkningslæringsagenter og symbolske matematikkløsere refererer også til trekanten når de resonnerer om polynomutvidelser og diskrete valgproblemer.

Ja. Matematikklærere drevet av kunstig intelligens genererer rad-for-rad-visualiseringer, adaptive øvingsproblemer og umiddelbar tilbakemelding på øvelser med binomialkoeffisienter. De hjelper elevene med å koble trekanten til kombinasjoner, sannsynlighet og binomialsetningen i sitt eget tempo.

Oppsummer dette innlegget med: