Ejercicio Nº 2: Triángulo de Pascal

 

Autor: Nicolás Fernández Cinquepalmi

 

Breve descripción: Se pide escribir un código en python que al ingresar un valor entero "n", devuelva los números de la n-ésima fila del triángulo de Pascal. Además, como una segunda parte, se pide modificar el código anterior de manera en que se puedan ingresar "n1","n2","n3",... y devuelva una lista cuyo primer elemento contenga los números en la fila "n1" del triángulo de Pascal, su segundo elemento contenga los números en la fila "n2" y así sucesivamente.

 

Marco Teórico: En las matemáticas, el triángulo de Pascal es una representación de los coeficientes binomiales ordenados en forma de triángulo. Es llamado así en honor al filósofo y matemático francés Blaise Pascal.

TP-3.JPG

 

PRIMERA PARTE

 

Paso 1. Comenzamos con definir una función que imprima la n-ésima fila del triángulo de Pascal. El parámetro a ingresar "n" será el número de la fila que se desea imprimir. Definimos dos variables en forma de lista "x" e "y" con el fin de ir generando las diferentes operaciones entre ellas. Se crea un ciclo "for" en el rango "n" con el objetivo de generar n veces determinada acción. La acción a realizar es la de modificar la lista "x" por una nueva lista, generada con la función "zip" que permite agrupar elementos por posición dentro de ella. Por ejemplo, para el caso n = 1:

        x = [1], y = [0]

El ciclo for se repetirá 1 vez y entonces la función zip generará:

        zip(i,d) = zip(x+y,y+x) = zip([1,0],[0,1]) = (i = 1,d = 0) , (i = 0,d = 1)

Luego, se modifica la variable "x" como:

        x = [i+d] = [(1 + 0), (0 + 1)] = [1,1]

Para el caso n = 2, la variable "x" ya ha sido modificada con el valor anterior. Por lo tanto:

        x = [1,1], y = [0]

Se repite el mismo procedimiento:

        zip(i,d) = zip([1,1,0],[0,1,1]) = (1,0),(1,1),(1,0)

Por último se suma el elemento i con el elemento d de cada conjunto, resultando:

        x = [1,2,1]

Cuyo resultado es correcto.

 

 

Paso 2. Se ingresa el valor "n", verificaos que el valor ingresado sea un número entero y finalmente se muestra la función pascal creada para el valor n-1, debido a que Python comienza el ciclo for en i = 0.

 

 

SEGUNDA PARTE

 

Paso 3. Se modifica el código anterior sólo para mostrar varias filas con un ciclo "for" e ingresando el número "n" de filas que se desean conocer.