Fórmula del triángulo de Pascal con ejemplos
⚡ Resumen inteligente
El triángulo de Pascal es una disposición triangular de números donde cada valor es igual a la suma de los dos números que se encuentran directamente encima, lo que revela patrones profundos en combinatoria, expansiones binomiales y probabilidad que han fascinado a los matemáticos durante siglos.
¿Qué es el triángulo de Pascal?
El triángulo de Pascal es una disposición triangular de números que sigue un patrón sencillo basado en la fila superior. Fue popularizado por el matemático francés Blaise Pascal en el siglo XVII. El triángulo comienza con un solo “1” en la parte superior, y cada fila subsiguiente comienza y termina también con un “1”.
Más allá de su elegante forma, el Triángulo de Pascal encierra profundas relaciones matemáticas. Está estrechamente vinculado al teorema del binomio, al conteo combinatorio y a la probabilidad, razón por la cual aparece en las aulas de álgebra, estadística e informática de todo el mundo.
Historia del triángulo de Pascal
Aunque recibe su nombre de Blaise Pascal, el triángulo es anterior a él por siglos. El texto matemático chino «Los nueve capítulos sobre el arte matemático» contiene uno de los primeros ejemplos conocidos, que muestra muchos de los mismos patrones que utilizamos hoy en día.
El matemático persa Al-Karaji y el erudito indio PingAla también exploró arreglos similares. Pascal formalizó las propiedades del triángulo en su tratado de 1654, “Traité du triangle arithmétique”, que dio a la estructura su nombre moderno en las matemáticas occidentales.
Construcción del Triángulo de Pascal
Construir el Triángulo de Pascal es sencillo. La única regla que hay que recordar es que cada fila empieza y termina con el número 1, y todos los demás números se construyen a partir de la fila superior.
Para cualquier fila r y columna c, el valor es igual a la suma de los números en las columnas c-1 y c de la fila r-1.
Aquí,
- r = 3, 4, 5, …
- n y c = 2, 3, 4, …, r-1.
Estos son los pasos para construir el Triángulo de Pascal:
Paso 1) Comience rellenando las dos primeras filas.
Paso 2) El segundo elemento de la tercera fila es la suma del primer y el segundo número de la segunda fila.
Paso 3) La cuarta fila comienza con “1”. El segundo número es 3, que es la suma de 1 y 2 (resaltado en azul).
La siguiente imagen muestra cómo rellenar la cuarta fila:
Paso 4) La quinta fila consta de cinco números. Ya conocemos el patrón para completar las filas gracias a los pasos anteriores.
Fórmula del triángulo de Pascal – Coeficiente binomial
Un coeficiente binomial cuenta el número de maneras de elegir un subconjunto de k elementos de una colección de n elementos. Se suele escribir como “C(n, k)” o “n sobre k”.
El coeficiente binomial se define como:
El símbolo “!” denota el factorial de un número.
n! = n.(n-1).(n-2)…3.2.1
Por ejemplo,
5! = 5.4.3.2.1
= 120
Entonces, C(5, 3) o “5 sobre 3” = 5! / 3!(5-3)!
= 120 / 12
= 10
Método 1: Construcción del triángulo de Pascal a partir de la fila anterior.
El procedimiento que se describe aquí es similar a cómo dibujamos el triángulo manualmente. Supongamos que queremos generar el triángulo de Pascal con hasta siete filas.
Los pasos a seguir son los siguientes:
Paso 1) Comience la fila superior con “1”.
Paso 2) Para la fila “r”, el elemento “c” será la suma de la columna “c-1” y la columna “c” de la fila “r-1”.
Paso 3) El primer y el último número de cada fila siempre serán “1”.
Siguiendo estos tres sencillos pasos, podremos construir sistemáticamente todo el triángulo.
C++ Code del Triángulo de Pascal por la fila anterior
#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); }
Salida:
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 de la fórmula del triángulo de Pascal por la fila anterior
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)
Resultado del ejemplo del triángulo de Pascal:
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
Análisis de complejidad
A matriz bidimensional se utiliza en esta implementación. Dado que N es el número de filas en el triángulo de Pascal, esto requiere N2 espacios unitarios. Por lo tanto, la complejidad espacial es O(N2).
La función utiliza dos bucles anidados, cada uno de los cuales se ejecuta hasta “N” veces. Por lo tanto, la complejidad temporal también es EN2)o complejidad temporal al cuadrado.
Método 2: Construcción del triángulo de Pascal mediante el cálculo del coeficiente binomial
Podemos obtener los números del triángulo de Pascal directamente utilizando coeficientes binomiales. El siguiente diagrama ilustra esta relación:
A continuación se detallan los pasos para construir el Triángulo de Pascal calculando el coeficiente binomial:
Paso 1) La fila superior es C(0, 0). Usando la fórmula anterior, C(0, 0) = 1, porque 0! = 1.
Paso 2) Para la fila “i”, habrá un total de “i” elementos. Cada elemento se calcula como C(n, r), donde n es i-1.
Paso 3) Repita el paso 2 para tantas filas del triángulo de Pascal como desee generar.
C++ Code Triángulo de Pascal por coeficiente binomial
#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); }
Salida:
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 Triángulo de Pascal por coeficiente binomial
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)
Resultado del ejemplo del triángulo de Pascal:
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
Análisis de complejidad
En esta implementación se utilizan tres bucles: uno para calcular el coeficiente binomial y dos más para iterar a través de cada fila y columna. Con respecto al número de filas, los tres bucles se ejecutan hasta "n" veces. En consecuencia, la complejidad temporal total es O(n).3).
La complejidad espacial es constante porque no almacenamos ningún resultado intermedio. El programa calcula cada elemento sobre la marcha y lo imprime dentro de una fila, por lo que la complejidad espacial se reduce a O (1).
Método 3: construir el triángulo de Pascal mediante el coeficiente binomial modificado
En la técnica anterior, usábamos la fórmula del coeficiente binomial para calcular cada elemento. El método modificado deriva C(n, r) directamente de C(n, r-1), reduciendo el trabajo en un orden de magnitud.
A continuación se detallan los pasos para construir el Triángulo de Pascal mediante el coeficiente binomial modificado:
Paso 1) Comience la primera fila con “1”.
Paso 2) Calcula C(n, r), donde “n” es el número de fila y “r” es el índice de columna. Asigna ese valor a una variable C.
Paso 3) Para calcular el siguiente coeficiente, use C * (n – k) / k. Asigne este nuevo valor a C.
Paso 4) Continúa el paso 3 hasta que “k” llegue al final de la fila. Después de cada iteración, incrementa k en uno.
C++ Code para el triángulo de Pascal mediante coeficiente binomial modificado
#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); }
Salida:
How many rows: 5 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1
Python Code para el triángulo de Pascal mediante coeficiente binomial modificado
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)
Resultado de los patrones de triángulos de Pascal:
How many rows: 5 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1
Análisis de complejidad
La implementación utiliza dos bucles, cada uno ejecutándose un máximo de “n” veces, donde “n” es el número de filas en el triángulo. Por lo tanto, la complejidad temporal es En2), tiempo al cuadrado.
En cuanto a la complejidad espacial, no necesitamos ningún arreglo para el almacenamiento. Solo usamos una variable para guardar el coeficiente binomial anterior, por lo que solo necesitamos un espacio adicional. Por lo tanto, la complejidad espacial es O (1).
Aplicación del Triángulo de Pascal
Aquí presentamos algunas aplicaciones prácticas del triángulo de Pascal:
Expansiones binomiales: Los coeficientes de cualquier desarrollo binomial se pueden leer directamente del triángulo de Pascal. He aquí un ejemplo:
| (x+y)0 | 1 |
| (x+y)1 | 1.x+ 1.y |
| (x+y)2 | 1x2 + 2xy + 1y2 |
| (x+y)3 | 1x3 + 3x2y + 3xy2 + 1y3 |
| (x+y)4 | 1x4 + 4x3y + 6x2y2 + 4xy3 + 1y4 |
Calcular combinaciones: Los elementos del triángulo de Pascal corresponden directamente a los coeficientes binomiales. Por ejemplo, si tienes 6 bolas y quieres elegir 3, la respuesta es 6C3Puedes encontrar ese valor en el tercer elemento de la sexta fila del triángulo de Pascal.
Probabilidad: El triángulo de Pascal se utiliza ampliamente para calcular probabilidades en lanzamientos de monedas, problemas con dados y otros eventos combinatorios donde cada resultado corresponde a una distribución binomial.
Datos interesantes sobre el triángulo de Pascal
Aquí hay algunos datos que le resultarán interesantes sobre el triángulo de Pascal:
- La suma de todos los elementos de cualquier fila siempre es una potencia de 2.
- La suma de las diagonales de las filas genera la secuencia de Fibonacci.
- Cada fila corresponde a los coeficientes en la expansión de (a+b).n.
- Si sombreas solo los números impares, la figura resultante forma el fractal del triángulo de Sierpinski.










