Pascal Üçgeni – Formül, Desenler ve Örnekler

Pascal Üçgeni Nedir?

Pascal Üçgeni, belirli bir desen ve ondan önceki satırla bağlantı tarafından takip edilen üçgen bir sayı dizisidir. Blaise Pascal tarafından icat edildi. Bu üçgen ilk satırda bir elemanla başlar. Bundan sonra her satır “1” ile başlar ve biter.

Pascal Üçgeni

Pascal Üçgeninin Tarihi

Çin kitabı “Matematik Sanatı Üzerine Dokuz Bölüm” Pascal Üçgeninin ilk örneklerinden birini içerir. Ayrıca günümüzde üçgenlerde bulunan desen ve niteliklerin aynılarından bazılarını içermektedir.

Pascal, Avrupa'da üçgeni inceleyen birkaç kişiden biriydi. Diğer matematikçiler ondan önce benzer üçgen sayı dizilerini incelemişlerdi.

Pascal Üçgeninin İnşaatı

Pascal Üçgenini oluşturmak basittir. Hatırlamanız gereken tek şey Satırın 1 ile başlayıp XNUMX ile bitmesidir. Geri kalan sayılar için kural şu ​​şekildedir:

Herhangi bir r satırı ve c sütunu için sayı, r-1 satırındaki c-1 ve c sütunlarının toplamı olacaktır.

Burada,

  • r = 3,4,5….
  • n ve c = 2,3,4,…r-1.

Pascal Üçgeni'ni oluşturma adımları şunlardır:

) 1 Adım İki satırı doldurarak başlayalım.

Pascal Üçgeninin İnşaatı

) 2 Adım Üçüncü satırın ikinci elemanı, ikinci satırdaki birinci ve ikinci sayıların toplamıdır.

Pascal Üçgeninin İnşaatı

) 3 Adım Dördüncü Sıra “1” ile başlayacak. İkinci sayı ise 3 ve 1'nin toplamı olan 2'tür (mavi renkle vurgulanmıştır).

Aşağıdaki resim dördüncü satırın nasıl doldurulacağını göstermektedir:

Pascal Üçgeninin İnşaatı

) 4 Adım Beşinci Sıra beş sayıdan oluşacaktır. Satırları doldurma modelini önceki adımlardan zaten biliyoruz.

Pascal Üçgeninin İnşaatı

Pascal Üçgen Formülü – Binom Katsayısı

Binom katsayısı, n öğeden oluşan bir koleksiyondan k öğenin bir alt kümesini seçmek için farklı yöntemleri ifade eden bir sayıdır. Sıklıkla “C(n,k)” veya “n seç k” şeklinde yazılır.

Binom katsayısı şu şekilde tanımlanır:

Pascal Üçgeni Formülü - Binom Katsayısı

“!” “faktöriyel” anlamına gelir.

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

Örneğin,

5! = 5.4.3.2.1

= 120

Diyelim ki C(5,3) veya 5, 3 = 5'i seçsin! / 3!(5-3)!

= 120/(12)

= 10

Yöntem 1: Pascal Üçgenini önceki satıra göre oluşturma

Bu prosedürdeki adımlar Pascal üçgenindeki adımlar ile aynıdır. Diyelim ki yedi satıra kadar Pascal üçgeni oluşturmak istiyoruz.

Bunu başarmak için gereken adımlar aşağıdaki gibidir:

) 1 Adım En üst satıra “1” ile başlayın.

) 2 Adım “r” satırı için “c” maddesi “c-1” ile “r-1” satırının numarası olan “c”nin çarpımı olacaktır.

) 3 Adım Art arda gelen ilk ve son sayılar her zaman “1” olacaktır.

Pascal üçgenini oluşturmak için bu üç kolay adıma uymalıyız.

C++ Önceki Satırdaki Pascal Üçgeni Kodu

#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);
}

Çıktı:

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 Önceki Satırdaki Pascal Üçgeni Formülünün Kodu

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)

Pascal Üçgeni Örnek Çıktısı:

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

Karmaşıklık Analizi

A iki boyutlu dizi uygulamada kullanıldı. N'nin Pascal üçgenindeki satır sayısı olduğu göz önüne alındığında. Bu N gerektirecektir2 birim uzaylar. Bu nedenle, O uzay karmaşıklığı olacaktır (N2).

Fonksiyonda iki döngümüz var ve her döngü "N" kez çalışır. Bu nedenle, zaman karmaşıklığı da O (N2) veya kare zaman karmaşıklığı.

Yöntem 2: Binom Katsayısını Hesaplayarak Pascal Üçgenini Oluşturma

Binom katsayısını kullanarak pascal üçgeninin sayılarını basitçe türetebiliriz. İşte diyagram:

Binom Katsayısını Hesaplayarak Pascal Üçgenini Oluşturmak

Binom'u hesaplayarak Pascal Üçgeni oluşturmanın adımları şunlardır:

) 1 Adım En üstteki satır C(0,0) olacaktır. Binom Katsayısı için yukarıdaki formülü kullanırsak C(0,0) = 1 olur. Çünkü 0! = 1.

) 2 Adım “i” satırı için toplam “i” elemanları olacaktır. Her öğe C(n,r) olarak hesaplanacaktır; burada n, i-1 olacaktır.

) 3 Adım Pascal üçgeni için istediğiniz satır sayısı için 2. adımı tekrarlayın.

C++ Binom Katsayısı ile Kod Pascal Üçgeni

#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);
}

Çıktı:

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 Binom Katsayısı ile Kod Pascal Üçgeni

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)

Pascal Üçgeni Örnek Çıktısı:

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

Karmaşıklık Analizi

Uygulamada üç döngü kullanıldı. Bir döngü Binom katsayısını hesaplamak için, diğer ikisi ise tüm satırlar için sayılar oluşturmak içindir. Satır sayısıyla ilgili olarak, "n" kez yürütülen üç döngümüz var. Sonuç olarak, genel zaman karmaşıklığı 0(n) olacaktır.3).

Uzay karmaşıklığı artık sabittir çünkü depolamada hiçbir veri tutmuyoruz. Program öğeyi hesaplar ve bir satırda yazdırılır. Uzay karmaşıklığı daha sonra 0(1)'e düşer.

Yöntem 3: Değiştirilmiş Binom Katsayısı ile Pascal Üçgenini Oluşturma

Önceki teknikte, Pascal üçgeninin her bir elemanını hesaplamak için binom katsayısının nasıl kullanılacağını zaten görmüştük. Bu yaklaşım C.(n,r-1)'den C(n,r)'yi belirleyecektir. İşleri tek sıra halinde basitleştirecek.

Pascal Üçgenini Değiştirilmiş Binom Katsayısı ile oluşturmanın adımları şunlardır:

) 1 Adım İlk Sırayı “1” ile başlatın

) 2 Adım C(n,r)'yi hesaplayın; burada “n” satır numarası ve “r” sütun veya öğedir. Değeri C değişkenine atayın.

) 3 Adım C(n,k)'yi hesaplamak için C*(nk)/k olacaktır. Şimdi bu değeri C'ye atayın.

) 4 Adım “k” Satırın sonuna ulaşana kadar 3. adıma devam edin. Her yinelemeden sonra K değerini bir artırın.

C++ Değiştirilmiş Binom Katsayısı ile Pascal Üçgeni Kodu

#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);
}

Çıktı:

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

Python Değiştirilmiş Binom Katsayısı ile Pascal Üçgeni kodu

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)

Pascal'ın Üçgen Desenleri Çıktısı:

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

Karmaşıklık Analizi

Uygulamanın iki döngüsü vardır. Her döngü maksimum "n" kez çalışır, burada "n" pascal üçgenindeki satır sayısını ifade eder. Yani, zaman karmaşıklığı O (n2), zamanın karesi.

Uzay karmaşıklığı açısından, depolamak için herhangi bir diziye ihtiyacımız yoktu. Önceki binom katsayısını tutmak için sadece bir değişken kullandık. Yani, sadece bir ekstra boşluğa ihtiyacımız vardı. Uzay karmaşıklığı şu hale geldi: O (1).

Pascal Üçgeninin Uygulanması

Pascal Üçgeninin bazı uygulamaları şunlardır:

Binom Genişlemeleri: Binom açılımlarının katsayısını Pascal üçgeninden belirleyebiliriz. İşte bir örnek:

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

Kombinasyonların Hesaplanması: Pascal üçgeninin elemanlarının binom katsayılarına eşdeğer olduğunu gördük. Örneğin, 6 topunuz varsa ve 3 top seçmeniz isteniyorsa, bu şu şekilde olacaktır: 6C3. Veya pascal üçgeninde 3. satırın 6. elemanındaki sayıyı bulabilirsiniz.

Pascal Üçgeni Hakkında İlginç Gerçekler

Pascal üçgeni hakkında ilginç bulacağınız bazı gerçekler:

  • Bir satırdaki tüm elemanların toplamı her zaman 2'nin kuvvetidir.

Pascal Üçgeni Hakkında Gerçekler

  • Satırların elemanlarının çapraz toplamı Fibonacci dizisini oluşturur.

Pascal Üçgeni Hakkında Gerçekler

ÖZET

  • Pascal üçgeni Binom Genişlemelerinin katsayılarını verir.
  • Pascal üçgeninin her satırı “1” ile başlar ve biter. Ara değerler önceki satırın iki öğesinin toplamıdır.
  • Pascal üçgenindeki tüm elemanların çapraz toplamı size şunu verecektir: Fibonacci Dizisi.
  • Pascal üçgeni aynı zamanda binom katsayıları ile de oluşturulabilir.