Формула трикутника Паскаля з прикладами

⚡ Розумний підсумок

Трикутник Паскаля — це трикутне розташування чисел, де кожне значення дорівнює сумі двох чисел безпосередньо над ним, що розкриває глибокі закономірності в комбінаториці, біноміальних розкладах та теорії ймовірностей, які захоплювали математиків протягом століть.

  • 🔺 Структура: Кожен рядок починається та закінчується на 1, а внутрішні значення утворюються шляхом додавання двох чисел вище.
  • 📐 Біноміальний зв'язок: Рядок n стовпець k дорівнює біноміальному коефіцієнту C(n, k), що робить трикутник візуальним пошуком комбінацій.
  • 🔢 Приховані закономірності: Суми рядків дорівнюють степеням числа 2, а діагональні суми генерують послідовність Фібоначчі.
  • Три методи: Ви можете побудувати його за попередніми рядками, обчислюючи біноміальні коефіцієнти або за допомогою ітеративного скороченого методу зі зміненими коефіцієнтами.
  • 🧪 Область застосування: Використовується в алгебрі, теорії ймовірностей, інформатиці та комбінаторних доказах у сучасних навчальних програмах.

Що таке трикутник Паскаля?

Трикутник Паскаля — це трикутний масив чисел, який відповідає простому шаблону, що базується на рядку над ним. Його популяризував французький математик Блез Паскаль у 17 столітті. Трикутник починається з однієї «1» зверху, і кожен наступний рядок також починається та закінчується «1».

Трикутник Паскаля

Окрім своєї елегантної форми, трикутник Паскаля кодує глибокі математичні зв'язки. Він тісно пов'язаний з теоремою біномів, комбінаторним рахуванням та теорією ймовірностей, саме тому його використовують у класах алгебри, статистики та інформатики по всьому світу.

Історія трикутника Паскаля

Хоча названий на честь Блеза Паскаля, трикутник виник на століття раніше за нього. Китайський математичний текст «Дев'ять розділів про математичне мистецтво» містить один із найдавніших відомих прикладів, що демонструє багато тих самих закономірностей, які ми використовуємо сьогодні.

Перський математик Аль-Караджі та індійський вчений PingАла також досліджував подібні масиви. Паскаль формалізував властивості трикутника у своєму трактаті 1654 року «Трактат про арифметику трикутника», який дав цій структурі сучасну назву в західній математиці.

Побудова трикутника Паскаля

Побудова трикутника Паскаля є простою. Єдине правило, яке слід пам'ятати, це те, що кожен рядок починається і закінчується одиницею, а кожне інше число будується з рядка вище.

Для будь-якого рядка r та стовпця c значення дорівнює сумі чисел у стовпцях c-1 та c рядка r-1.

Тут,

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

Ось кроки для побудови трикутника Паскаля:

Крок 1) Почніть із заповнення перших двох рядків.

Побудова трикутника Паскаля

Крок 2) Другий елемент третього рядка – це сума першого та другого чисел у другому рядку.

Побудова трикутника Паскаля

Крок 3) Четвертий рядок починається з «1». Друге число — 3, яке є сумою чисел 1 та 2 (виділено синім кольором).

На зображенні нижче показано, як заповнити четвертий ряд:

Побудова трикутника Паскаля

Крок 4) П'ятий рядок складається з п'яти чисел. Ми вже знаємо шаблон заповнення рядків з попередніх кроків.

Побудова трикутника Паскаля

Формула трикутника Паскаля – біноміальний коефіцієнт

Біноміальний коефіцієнт підраховує кількість способів вибору підмножини k елементів з набору з n елементів. Його зазвичай записують як «C(n, k)» або «n вибирає k».

Біноміальний коефіцієнт визначається як:

Формула трикутника Паскаля – біноміальний коефіцієнт

Символ «!» позначає факторіал числа.

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

Наприклад,

5! = 5.4.3.2.1

= 120

Отже, C(5, 3) або «5 вибираємо 3» = 5! / 3!(5-3)!

= 120/12

= 10

Спосіб 1: Побудова трикутника Паскаля за попереднім рядком

Процедура, описана тут, відображає те, як ми малювали трикутник вручну. Припустимо, що ми хочемо згенерувати трикутник Паскаля до семи рядків.

Для цього потрібно виконати такі дії:

Крок 1) Почніть верхній ряд з «1».

Крок 2) Для рядка «r» елемент «c» буде сумою значень стовпця «c-1» та стовпця «c» рядка «r-1».

Крок 3) Перше та останнє числа в кожному рядку завжди будуть «1».

Дотримання цих трьох простих кроків дозволяє нам систематично побудувати весь трикутник.

C++ Code трикутника Паскаля за попереднім рядком

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

вихід:

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 Формула трикутника Паскаля за попереднім рядком

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)

Приклад трикутника Паскаля:

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

Аналіз складності

A двовимірний масив використовується в цій реалізації. Враховуючи, що N — це кількість рядків у трикутнику Паскаля, це вимагає N2 одиничних просторів. Отже, складність простору дорівнює O(N2).

Функція використовує два вкладені цикли, кожен з яких виконується до «N» разів. Отже, часова складність також O (N2), або квадрат часової складності.

Спосіб 2: Побудова трикутника Паскаля шляхом обчислення біноміального коефіцієнта

Ми можемо безпосередньо вивести числа трикутника Паскаля, використовуючи біноміальні коефіцієнти. Діаграма нижче ілюструє цей зв'язок:

Побудова трикутника Паскаля шляхом обчислення біноміального коефіцієнта

Ось кроки для побудови трикутника Паскаля шляхом обчислення біноміального коефіцієнта:

Крок 1) Найвищий рядок — це C(0, 0). Використовуючи наведену вище формулу, C(0, 0) = 1, оскільки 0! = 1.

Крок 2) Для рядка «i» буде загалом «i» елементів. Кожен елемент обчислюється як C(n, r), де n дорівнює i-1.

Крок 3) Повторіть крок 2 для стільки рядків трикутника Паскаля, скільки потрібно згенерувати.

C++ Code Трикутник Паскаля за допомогою біноміального коефіцієнта

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

вихід:

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 Трикутник Паскаля за допомогою біноміального коефіцієнта

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)

Приклад трикутника Паскаля:

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

Аналіз складності

У цій реалізації використовуються три цикли: один для обчислення біноміального коефіцієнта та ще два для ітерації по кожному рядку та стовпцю. Що стосується кількості рядків, усі три цикли виконуються до «n» разів. Отже, загальна часова складність становить O(n3).

Просторова складність є постійною, оскільки ми не зберігаємо жодних проміжних результатів. Програма обчислює кожен елемент на льоту та виводить його в рядку, тому просторова складність зменшується до O (1).

Спосіб 3: Побудова трикутника Паскаля за модифікованим біноміальним коефіцієнтом

У попередньому методі ми використовували формулу біноміального коефіцієнта для обчислення кожного елемента. Модифікований підхід виводить C(n, r) безпосередньо з C(n, r-1), зменшуючи роботу на один порядок.

Ось кроки для побудови трикутника Паскаля за допомогою модифікованого біноміального коефіцієнта:

Крок 1) Почніть перший ряд з «1».

Крок 2) Обчисліть C(n, r), де «n» – номер рядка, а «r» – індекс стовпця. Призначте це значення змінній C.

Крок 3) Для обчислення наступного коефіцієнта використовуйте C * (n – k) / k. Призначте це нове значення назад C.

Крок 4) Продовжуйте крок 3, доки «k» не досягне кінця рядка. Після кожної ітерації збільшуйте k на одиницю.

C++ Code для трикутника Паскаля за допомогою модифікованого біноміального коефіцієнта

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

вихід:

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

Python Code для трикутника Паскаля за допомогою модифікованого біноміального коефіцієнта

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)

Вихідні дані трикутників Паскаля:

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

Аналіз складності

Реалізація використовує два цикли, кожен з яких виконується максимум «n» разів, де «n» – це кількість рядків у трикутнику. Отже, часова складність становить О (н.)2), у квадраті часу.

Щодо просторової складності, нам не потрібен масив для зберігання. Ми використовуємо лише одну змінну для збереження попереднього біноміального коефіцієнта, тому нам потрібен лише один додатковий пробіл. Таким чином, просторова складність дорівнює O (1).

Застосування трикутника Паскаля

Ось деякі практичні застосування трикутника Паскаля:

Біноміальні розширення: Коефіцієнти будь-якого біноміального розкладу можна прочитати безпосередньо з трикутника Паскаля. Ось приклад:

(х + у)0 1
(х + у)1 1.x + 1.y
(х + у)2 1x2 + 2xy + 1y2
(х + у)3 1x3 + 3x2та + 3xy2 + 1y3
(х + у)4 1x4 + 4x3та + 6x2y2 + 4xy3 + 1y4

Розрахунок комбінацій: Елементи трикутника Паскаля безпосередньо відповідають біноміальним коефіцієнтам. Наприклад, якщо у вас є 6 кульок і ви хочете вибрати 3, відповідь така: 6C3Ви можете знайти це значення у 3-му елементі 6-го рядка трикутника Паскаля.

Імовірність: Трикутник Паскаля широко використовується для обчислення ймовірностей у задачах на підкидання монети, гральні кості та інших комбінаторних подіях, де кожен результат відповідає біноміальному розподілу.

Цікаві факти про трикутник Паскаля

Ось деякі факти про трикутник Паскаля, які вас зацікавлять:

  • Сума всіх елементів у будь-якому рядку завжди є степенем числа 2.

Факти про трикутник Паскаля

  • Діагональні суми рядків генерують послідовність Фібоначчі.

Факти про трикутник Паскаля

  • Кожен рядок відповідає коефіцієнтам у розкладі (a+b)n.
  • Якщо заштрихувати лише непарні числа, отримана фігура утворює фрактал трикутника Серпінського.

Поширені запитання

Хоча названий на честь Блеза Паскаля, який формалізував його в 1654 році, трикутник був відомий у Китаї, Індії та Персії століттями раніше. Математики, такі як Цзя Сянь, Ян Хуей, Pingала, і Аль-Караджі вивчав подібні масиви задовго до Паскаля.

Кожен елемент у трикутнику Паскаля дорівнює біноміальному коефіцієнту C(n, k). Числа в рядку n дають коефіцієнти (a + b), піднесені до степеня n, що робить трикутник таблицею швидкого пошуку для біноміальних розкладів.

Сума всіх чисел у n-му рядку трикутника Паскаля дорівнює 2, піднесеним до степеня n. Наприклад, рядок 4 містить 1, 4, 6, 4, 1, що в сумі дає 16, рівно 2 у 4-му степені.

Якщо додати числа вздовж неглибоких діагоналей трикутника Паскаля, отримані суми утворюють послідовність Фібоначчі: 1, 1, 2, 3, 5, 8, 13 тощо. Це один із найелегантніших прихованих візерунків трикутника.

Трикутник Паскаля моделює ймовірності подій з двома рівноймовірними результатами, такими як підкидання монети. Рядок n показує, скількома способами можна отримати k орлів за n підкидань, що безпосередньо впливає на біноміальний розподіл ймовірностей.

Системи штучного інтелекту використовують біноміальні коефіцієнти, взяті з трикутника Паскаля, для вибору ознак, вибірки та комбінаторної оптимізації. Агенти навчання з підкріпленням та розв'язувачі символьної математики також використовують трикутник, коли міркують про розклади поліноміів та задачі дискретного вибору.

Так. Репетитори з математики на базі штучного інтелекту створюють візуалізації по рядках, адаптивні практичні задачі та миттєві зворотні зв'язки щодо вправ на біноміальні коефіцієнти. Вони допомагають учням пов'язувати трикутник з комбінаціями, ймовірністю та теоремою бінома у власному темпі.

Підсумуйте цей пост за допомогою: