Debo hacer un programa para calcular el máximo común divisor de dos números, y decidí hacerlo con un ciclo for. El problema es que en mi código se imprimen todos los números que cumplen con los requisitos.
a=int(raw_input('Ingresa tu primer numero: '))b=int(raw_input('Ingresa tu segundo numero: '))#Separaremos dos casos#Primero, cuando a sea mayor a bif a>b: for i in range(1,a+1): if a % i == 0.: #Aca vemos si hay algun numero i que al dividir a a no deje resto if b !=0: #Aca tomamos la posibilad de que b sea distinto de cero if b % i == 0.: #Y aca vemos si i tambien es divisor de b print 'Maximo comun divisor para ', a, ' y ', b, ' es:' print iif b == 0: #Aca tomamos la posibilidad de que b sea igual a cero print 'Maximo comun divisor para ', a, ' y ', b, ' es: ', a#Ahora cuando b sea mayor a aif b>a: for i in range(1,b+1): if b % i == 0.: if a !=0: if a % i == 0.: print 'Maximo comun divisor para ', b, ' y ', a, ' son:' print iif a == 0: print 'Maximo comun divisor para ', b, ' y ', a, ' es: ', b
Por ejemplo, cuando ingreso los números 20 y 10, me imprime
Maximo comun divisor para 20 y 10 es:1Maximo comun divisor para 20 y 10 es:2Maximo comun divisor para 20 y 10 es:5Maximo comun divisor para 20 y 10 es:10
Y sólo quiero que imprima el número más grande (en este caso el 10). Agradecería mucho su ayuda!!