# leggiamo a e b a=input("primo numero = ") b=input("secondo numero = ") ma=a # multiplo di a ma= a*1 k = 1 mb=b # multiplo di a mb= b*1 c = 1 while ma != mb: # fino a che i multipli sono diversi if ma < mb : ma = ma + a # incrementiamo k else: mb = mb + b # incrementiamo c print "m.c.m. di ",a," e ",b," = ", maIl problema poteva essere risolto con un programma più corto (questa soluzione è stata proposta a lezione da uno studente di biologia) con l'algoritmo seguente:
# leggiamo a e b a=input("primo numero = ") b=input("secondo numero = ") m=1 # multiplo di a e m while m % b !=0 or m % a !=0 : # fino a che i multipli sono diversi m=m+1 print "m.c.m. di ",a," e ",b," = ", maQual'è l'algoritmo più veloce? È interessante provare i due algoritmi con a=100 e b=99 e a=10000 b=9999.