! Programa que lê vários pares de dois números inteiros positivos e, para cada par de 
! números lidos, imprime o MMC - Mínimo Múltiplo Comum entre eles. O programa encerra quando
! pelo menos um dos números não é positivo
program calcula_mmc
	implicit none
	integer num1, num2, mmc

    write (*, *) "Programa que le varios pares de dois numeros inteiros e, para cada par de" 
    write (*, *) "numeros lidos, imprime o MMC - Minimo Multiplo Comum entre eles. O programa" 
    write (*, *) "encerra quando pelo menos um dos numeros nao e positivo"
    write (*, *) 
    
    write (*, *) "Digite dois inteiros positivos. Para encerrar,numeros nao positivos:"
    read  (*, *) num1, num2
    do while(num1 > 0 .AND. num2 > 0)
       !calcula o mmc
       mmc = num1
       do while (mod(mmc, num2)/= 0)
         mmc = mmc + num1
       end do 
       !imprime mmc  
       write (*, *) "o mmc eh ", mmc
       write (*, *)
       !lê próximos números 
       write (*, *) "Digite dois inteiros positivos. Para encerrar numeros não positivos:"
       read  (*, *) num1, num2
    end do
    
    stop   
end program calcula_mmc
