Skip to content
Snippets Groups Projects
Commit cb69af43 authored by Rafael Andrei Vinasco Soler's avatar Rafael Andrei Vinasco Soler
Browse files

ejercicio 2 con comentarios extras explicativos

parent ce3deff3
No related branches found
No related tags found
No related merge requests found
%% Cell type:markdown id: tags:
# Primeros definiremos las funciones a usar
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
def factorial(a): def factorial(a): ## funcion factorial
fact = 1 fact = 1
for i in range(1,a+1): for i in range(1,a+1):
fact = fact * i fact = fact * i
return fact return fact
def comb(a,b): ## a fila y b columna ; el 1 de la punta es una fila para mi!! def comb(a,b): ## a fila y b columna ; el 1 de la punta es una fila para mi!!
comb = factorial(a-1)/(factorial(b-1)*factorial(a-b)) comb = factorial(a-1)/(factorial(b-1)*factorial(a-b))
return comb return comb
## funcion para verificar la entrada ## funcion para verificar la entrada
def input_punto2_1(): def input_punto2_1():
while True: while True:
a = input("Ingrese la fila del triangulo de Pascal que desea conocer:") a = input("Ingrese la fila del triangulo de Pascal que desea conocer:")
try: try:
a = int(a) a = int(a)
return a return a
except ValueError: except ValueError:
print('La entrada es incorrecta: escribe un numero entero.') print('La entrada es incorrecta: escribe un numero entero.')
## funcion para verificar la entrada ## funcion para verificar la entrada , lo unico que cambia con respecto al anterior es el print
def input_punto2_2(): def input_punto2_2():
while True: while True:
a = input("Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':") a = input("Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':")
try: try:
a = int(a) a = int(a)
return a return a
except ValueError: except ValueError:
print('La entrada es incorrecta: escribe un numero entero') print('La entrada es incorrecta: escribe un numero entero')
## funcion para sacar lista de entrada para fila n ## funcion para sacar lista de entrada para fila n
def fila_n(n): def fila_n(n):
fila_list = list() fila_list = list()
for i in range (1,n+1,1): for i in range (1,n+1,1):
fila_list.append(comb(n,i)) fila_list.append(comb(n,i))
return fila_list return fila_list
``` ```
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
varias_filas = input_punto2_1() varias_filas = input_punto2_1() #entrada del usuario y verificar que sea un numero entero
filas = list() filas = list()
filas.append(fila_n(varias_filas)) filas.append(fila_n(varias_filas)) # guardo en el elemento de la lista una lista con la fila del trianguilo
while(varias_filas != 0): while(varias_filas != 0): # para que si el usuario quiere terminar pase directamente al print
varias_filas = input_punto2_2() varias_filas = input_punto2_2() # pregunto si desea conocer mas filas o no
if (varias_filas != 0): if (varias_filas != 0):
filas.append(fila_n(varias_filas)) filas.append(fila_n(varias_filas)) # Guarde la fila nueva
##print(filas) ##print(filas)
for i in filas: for i in filas: # para imprimir lo guardado
print('fila', len(i) ,i) print('fila', len(i) ,i)
## filas.append(fila_n(varias_filas)) ## filas.append(fila_n(varias_filas))
``` ```
%% Output %% Output
Ingrese la fila del triangulo de Pascal que desea conocer:1 Ingrese la fila del triangulo de Pascal que desea conocer:1
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':2 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':2
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':3 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':3
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':4 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':4
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0': Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':
La entrada es incorrecta: escribe un numero entero La entrada es incorrecta: escribe un numero entero
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0': Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':
La entrada es incorrecta: escribe un numero entero La entrada es incorrecta: escribe un numero entero
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':7 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':7
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':8 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':8
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0': Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':
La entrada es incorrecta: escribe un numero entero La entrada es incorrecta: escribe un numero entero
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':9 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':9
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':10 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':10
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':15. Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':15.
La entrada es incorrecta: escribe un numero entero La entrada es incorrecta: escribe un numero entero
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':7.25 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':7.25
La entrada es incorrecta: escribe un numero entero La entrada es incorrecta: escribe un numero entero
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':a Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':a
La entrada es incorrecta: escribe un numero entero La entrada es incorrecta: escribe un numero entero
Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':0 Ingrese la otra fila que desea conocer, en caso de no desear conocer otras filas escriba '0':0
fila 1 [1.0] fila 1 [1.0]
fila 2 [1.0, 1.0] fila 2 [1.0, 1.0]
fila 3 [1.0, 2.0, 1.0] fila 3 [1.0, 2.0, 1.0]
fila 4 [1.0, 3.0, 3.0, 1.0] fila 4 [1.0, 3.0, 3.0, 1.0]
fila 7 [1.0, 6.0, 15.0, 20.0, 15.0, 6.0, 1.0] fila 7 [1.0, 6.0, 15.0, 20.0, 15.0, 6.0, 1.0]
fila 8 [1.0, 7.0, 21.0, 35.0, 35.0, 21.0, 7.0, 1.0] fila 8 [1.0, 7.0, 21.0, 35.0, 35.0, 21.0, 7.0, 1.0]
fila 9 [1.0, 8.0, 28.0, 56.0, 70.0, 56.0, 28.0, 8.0, 1.0] fila 9 [1.0, 8.0, 28.0, 56.0, 70.0, 56.0, 28.0, 8.0, 1.0]
fila 10 [1.0, 9.0, 36.0, 84.0, 126.0, 126.0, 84.0, 36.0, 9.0, 1.0] fila 10 [1.0, 9.0, 36.0, 84.0, 126.0, 126.0, 84.0, 36.0, 9.0, 1.0]
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
``` ```
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment