صيغة باسكال للمثلث مع أمثلة

⚡ ملخص ذكي

مثلث باسكال هو ترتيب مثلثي للأرقام حيث تساوي كل قيمة مجموع الرقمين الموجودين فوقها مباشرة، مما يكشف عن أنماط عميقة في التوافقية، وتوسعات ذات الحدين، والاحتمالات التي أسرت علماء الرياضيات لقرون.

  • 🔺 بناء: يبدأ كل صف وينتهي بالرقم 1، وتتكون القيم الداخلية من خلال جمع الرقمين أعلاه.
  • 📐 الرابط الثنائي: الصف n العمود k يساوي معامل ذي الحدين C(n, k)، مما يجعل المثلث بمثابة بحث مرئي عن التركيبات.
  • 🔢 الأنماط المخفية: مجموع الصفوف يساوي قوى العدد 2، ومجموع الأقطار يُولّد متتالية فيبوناتشي.
  • ✅ ثلاث طرق: يمكنك بناءها من خلال الصفوف السابقة، أو عن طريق حساب معاملات ذات الحدين، أو عن طريق اختصار المعاملات المعدلة التكرارية.
  • 🧪 التطبيقات: تُستخدم في الجبر، والاحتمالات، وعلوم الحاسوب، والبراهين التوافقية في المناهج الدراسية الحديثة.

ما هو مثلث باسكال؟

مثلث باسكال هو مصفوفة مثلثية من الأرقام تتبع نمطًا بسيطًا يعتمد على الصف الذي يعلوه. وقد اشتهر بفضل عالم الرياضيات الفرنسي بليز باسكال في القرن السابع عشر. يبدأ المثلث بالرقم "1" في الأعلى، ويبدأ كل صف لاحق وينتهي بالرقم "1" أيضًا.

مثلث باسكال

إلى جانب شكله الأنيق، يجسد مثلث باسكال علاقات رياضية عميقة. فهو يرتبط ارتباطًا وثيقًا بنظرية ذات الحدين، والعد التوافقي، والاحتمالات، ولهذا السبب يظهر في فصول الجبر والإحصاء وعلوم الحاسوب في جميع أنحاء العالم.

تاريخ مثلث باسكال

على الرغم من تسميته نسبةً إلى بليز باسكال، إلا أن المثلث أقدم منه بقرون. يحتوي النص الرياضي الصيني "الفصول التسعة في الفن الرياضي" على أحد أقدم الأمثلة المعروفة، والذي يعرض العديد من الأنماط نفسها التي نستخدمها اليوم.

عالم الرياضيات الفارسي الكراجي وعالم هندي Pingاستكشف آلا أيضًا مصفوفات مماثلة. قام باسكال بصياغة خصائص المثلث في أطروحته عام 1654 بعنوان "Traité du triangle arithmétique"، والتي أعطت البنية اسمها الحديث في الرياضيات الغربية.

بناء مثلث باسكال

إنشاء مثلث باسكال أمر بسيط. القاعدة الوحيدة التي يجب تذكرها هي أن كل صف يبدأ وينتهي بالرقم 1، وكل رقم آخر يُبنى من الصف الذي يسبقه.

بالنسبة لأي صف 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".

الخطوة 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" مرة. لذا، فإن التعقيد الزمني هو أيضًا على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

تحليل التعقيد

تُستخدم ثلاث حلقات تكرارية في هذا التطبيق: واحدة لحساب معامل ذي الحدين، واثنتان أخريان للتكرار عبر كل صف وعمود. بالنسبة لعدد الصفوف، تُنفَّذ الحلقات الثلاث جميعها حتى "ن" مرة. وبالتالي، فإن التعقيد الزمني الإجمالي هو O(n).3).

يُعدّ تعقيد المساحة ثابتًا لأننا لا نخزن أي نتائج وسيطة. يحسب البرنامج كل عنصر أثناء التنفيذ ويطبعه ضمن صف، لذا ينخفض ​​تعقيد المساحة إلى يا (1).

الطريقة الثالثة: بناء مثلث باسكال بمعامل ذي الحدين المعدل

في الأسلوب السابق، استخدمنا صيغة معامل ذي الحدين لحساب كل عنصر. أما الأسلوب المعدل فيستنتج 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

تحليل التعقيد

يستخدم التنفيذ حلقتين، تعمل كل منهما بحد أقصى "ن" مرة، حيث "ن" هو عدد صفوف المثلث. لذا، فإن التعقيد الزمني هو على2)، الزمن التربيعي.

فيما يتعلق بتعقيد المساحة، لسنا بحاجة إلى أي مصفوفة للتخزين. نستخدم متغيرًا واحدًا فقط للاحتفاظ بمعامل ذي الحدين السابق، لذا نحتاج إلى مساحة إضافية واحدة فقط. وبالتالي، فإن تعقيد المساحة هو يا (1).

تطبيق مثلث باسكال

فيما يلي بعض التطبيقات العملية لمثلث باسكال:

التوسعات ذات الحدين: يمكن قراءة معاملات أي مفكوك ذي الحدين مباشرة من مثلث باسكال. إليك مثال:

(س + ص)0 1
(س + ص)1 1.x + 1.y
(س + ص)2 1x2 + 2س ص + 1y2
(س + ص)3 1x3 + 3x2و + 3xy2 + 1y3
(س + ص)4 1x4 + 4x3و + 6x2y2 + 4xy3 + 1y4

حساب المجموعات: عناصر مثلث باسكال تُقابل معاملات ذات الحدين مباشرةً. على سبيل المثال، إذا كان لديك 6 كرات وتريد اختيار 3 منها، فالإجابة هي 6C3يمكنك إيجاد تلك القيمة في العنصر الثالث من الصف السادس من مثلث باسكال.

احتمالا: يستخدم مثلث باسكال على نطاق واسع لحساب الاحتمالات في رمي العملة المعدنية، ومسائل النرد، والأحداث التوافقية الأخرى حيث تتوافق كل نتيجة مع توزيع ذي الحدين.

حقائق مثيرة للاهتمام حول مثلث باسكال

فيما يلي بعض الحقائق التي قد تجدها مثيرة للاهتمام حول مثلث باسكال:

  • مجموع جميع العناصر في أي صف هو دائماً قوة للعدد 2.

حقائق عن مثلث باسكال

  • تُنتج المجاميع القطرية للصفوف متتالية فيبوناتشي.

حقائق عن مثلث باسكال

  • يمثل كل صف المعاملات في مفكوك (أ + ب)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 رمية، وهو ما يغذي توزيع الاحتمال ذي الحدين بشكل مباشر.

تستخدم أنظمة الذكاء الاصطناعي معاملات ذات الحدين المستمدة من مثلث باسكال لاختيار الميزات، وأخذ العينات، والتحسين التوافقي. كما تستخدم عوامل التعلم المعزز وحلول الرياضيات الرمزية هذا المثلث عند التفكير في متسلسلات كثيرات الحدود ومسائل الاختيار المنفصل.

نعم. تُنشئ برامج تعليم الرياضيات المدعومة بالذكاء الاصطناعي رسومًا بيانية تفصيلية، ومسائل تدريبية مُتكيفة، وتغذية راجعة فورية حول تمارين معاملات ذات الحدين. وتساعد هذه البرامج المتعلمين على ربط المثلث بالتوافيق والاحتمالات ونظرية ذات الحدين بوتيرة تناسبهم.

تلخيص هذه التدوينة بـ: