PROGRAM MCD_Y_MCM IMPLICIT NONE !------------------------------------------------------- ! Variables INTEGER :: m,n,i,tope INTEGER :: mcd,mcm !------------------------------------------------------- !Introduccion de datos (con filtro) m=0 n=0 DO WHILE ( n .le. 0 .or. m .le. 0 ) PRINT*, "Instroduce dos numeros estrictamente positivos" READ*,n,m ENDDO !Calculo del MCD mcd=1 tope = min(m,n) DO i=2,tope IF (mod(n,i) .eq. 0 .or. mod(m,i) .eq. 0) THEN mcd=i ENDIF ENDDO !Calculo del MCM mcm= max(n,m) DO WHILE (mod(mcm,m) .ne. 0 .and. mod(mcm,n) .ne. 0) mcm=mcm+1 ENDDO !Salida de datos PRINT*,'El MCD de ',n,' y ',m,' es ',mcd PRINT*,'El mcm de ',n,' y ',m,' es ',mcm END PROGRAM MCD_Y_MCM !-------------------------------------------------------