algorithm
Triángulo de Pascal
Buscar..
Pascal's Triagle Información Básica
Uno de los patrones numéricos más interesantes es el triángulo de Pascal . El nombre "Triángulo de Pascal" lleva el nombre de Blaise Pascal , un famoso matemático y filósofo francés.
En Matemáticas, el Triángulo de Pascal es una matriz triangular de coeficientes binomiales. Las filas del triángulo de Pascal se enumeran convencionalmente comenzando con la fila n = 0 en la parte superior (la fila 0). Las entradas en cada fila están numeradas desde la izquierda comenzando con k = 0 y generalmente están escalonadas en relación con los números en las filas adyacentes.
El triángulo se construye de la siguiente manera:
- En la fila superior, hay una entrada única que no es cero 1.
- Cada entrada de cada fila subsiguiente se construye agregando el número arriba y a la izquierda con el número arriba y a la derecha, tratando las entradas en blanco como 0.
Por ejemplo, el número inicial en la primera (o cualquier otra fila) es 1 (la suma de 0 y 1), mientras que los números 1 y 3 en la tercera fila se suman para producir el número 4 en la cuarta fila.
Ecuación para generar cada entrada en el triángulo de Pascal:
para cualquier entero no negativo n y cualquier entero k entre 0 y n, ambos inclusive. Esta recurrencia de los coeficientes binomiales se conoce como regla de Pascal . El triángulo de Pascal tiene generalizaciones dimensionales superiores. La versión tridimensional se llama pirámide de Pascal o tetraedro de Pascal, mientras que las versiones generales se llaman simplices de Pascal.
Ejemplo del Triángulo de Pascal:
Implementación del Triángulo de Pascal en C #
public class PascalsTriangle
{
static void PascalTriangle(int n)
{
for (int line = 1; line <= n; line++)
{
int c = 1;
for (int i = 1; i <= line; i++)
{
Console.WriteLine(c);
c = c * (line - i) / i;
}
Console.WriteLine("\n");
}
}
public static int Main(int input)
{
PascalTriangle(input);
return input;
}
}
Triángulo de Pascal en C
int i, space, rows, k=0, count = 0, count1 = 0;
row=5;
for(i=1; i<=rows; ++i)
{
for(space=1; space <= rows-i; ++space)
{
printf(" ");
++count;
}
while(k != 2*i-1)
{
if (count <= rows-1)
{
printf("%d ", i+k);
++count;
}
else
{
++count1;
printf("%d ", (i+k-2*count1));
}
++k;
}
count1 = count = k = 0;
printf("\n");
}
Salida
1
2 3 2
3 4 5 4 3
4 5 6 7 6 5 4
5 6 7 8 9 8 7 6 5