PROGRAM Mükemmel_Sayi
!------------------------------------------------------
! 17prg04.f95
! N = 10000 den küçük mükemmel sayılar.
!------------------------------------------------------
IMPLICIT NONE
INTEGER, PARAMETER :: N = 10000
INTEGER :: I, Sayi, Toplam, Sayac = 0
DO Sayi = 2, N
Toplam = 0
DO I=2, Sayi-1
! tam bölenleri bul ve topla
IF( MOD(Sayi,I) == 0 ) Toplam = Toplam + I
END DO
! Bölenlerin toplamı sayıya eşit mi?
IF( Toplam + 1 == Sayi) THEN
Sayac = Sayac + 1
PRINT *,Sayi
END IF
END DO
PRINT *,"Toplam ",Sayac, " adet."
END PROGRAM Mü