Está en la página 1de 2

Ordenamiento por inserción

def ord_insercion(lista):

for i in xrange(len(lista)-1):

if lista[i+1]< lista[i]:

reubicar(lista, i+1)

print "DEBUG: ", lista

def reubicar(lista, p):

v = lista[p]

j = p

while j > 0 and v < lista[j-1]:

lista[j] = lista[j-1]

j -= 1

lista[j] = v
def fac(n):
if n == 0:
return 1
else:
return n * fac(n-1)

def euclides2(num1,num2):
if num2 == 0:
return num1
return euclides2(num2, num1 % num2)

def euclides(num1,num2):
if num1>num2:
a = num1
b = num2
else:
a = num2
b = num1
division = divmod(a,b)
while division[1]!=0:
a=b
b = division[1]
division = divmod(a,b)

return b
# solicitamos los dos números
num1 = int(input("Introduce el primer numero: "))
num2 = int(input("Introduce el segundo numero: "))
print fac(5)
print("El máximo común divisor de ", num1," y ", num2," es ", euclides(num1, num2))
print("El máximo común divisor de ", num1," y ", num2," es ", euclides2(num1, num2))

También podría gustarte