Hola, tengo un problemilla haciendo este programa, tengo ya el código y no me da problemas al compilar, pero a la hora de ejecutarlo no hace nada, y no sé dónde puede estar el fallo. Os dejo el enunciado de la práctica para que entendáis qué estoy haciendo y el código, muchas gracias!
Enunciado:Dos números a y b se dicen que son amigos si la suma de los divisores de a (salvo él mismo)
coincide con b y viceversa.
El menor par de números amigos es el formado por el 220 y el 284, ya que:
Suma de divisores de 220 (excepto 220): 1+2+4+5+10+11+20+22+44+55+110=284.
Suma de divisores de 284 (excepto 284): 1+2+4+71+142=220.
Otros números amigos son 2620 y 2924, 6232 y 6368, 17296 y 18416, 9363584 y 9437056.
Escribe un programa que tenga como entrada dos números naturales n y m y muestre en
pantalla todas las parejas de números naturales que existan en el intervalo [n, m].
Código: PROGRAM PRACTICA4
INTEGER a, b, i, j, n, m, s, t
PRINT *, 'Introduzca el número n (el menor)'
READ *, n
PRINT *, 'Introduzca el número m (el mayor)'
READ *, m
DO WHILE (n<m)
DO i=1, n/2
a=MOD(n,i)
IF (a==0) THEN
s=s+i
END IF
END DO
DO j=1, m/2
b=MOD(m,j)
IF (b==0) THEN
t=t+j
END IF
END DO
IF (s==t) THEN
PRINT *, n, ' y ', m, ' son amigos'
END IF
n=n+1
END DO
END