abundant function
1. Definition
An integer is called abundant if the sum of all its divisors
including 1 but excluding itself, is greater than this number. When
this sum is equal to this number, the letter is called perfect.
If this sum is less then this number, it is called deficient.
Example:
--------
12 is abundant, and 8 is not abundant.
2. Example in F90 language:
!This program tells whether a number is abundant
!-----------------------------------------------
PROGRAM abundant
IMPLICIT NONE
INTEGER :: i,n, sum
PRINT*,"Enter an integer : --> \n"
READ*, n
sum = 0
do i = 1, n-1
if (mod(n,i) == 0) THEN
sum = sum + i
end IF
continue
end do
if (sum. le. n) then
PRINT*,"The number", n," is not abundant "
else
PRINT*,"The number", n," is abundant "
endif
END PROGRAM abundant
Results:
--------
C:\\Fortran90>abundant
Enter an integer : -->
8
The number is not abundant
C:\\Fortran90>abundant
Enter an integer : -->
24
The number 24 is abundant
!This program gives all the odd abundant integers less than a given one:
!------------------------------------------------------------------------
PROGRAM abundant_odd
IMPLICIT NONE
INTEGER :: j,i,n, sum
PRINT*,"Enter an integer : --> \n"
READ*, n
! To choose the numbers from 1 to n
do j =1,n
! To be odd
if (mod(j,2) /= 0) THEN
sum = 0
do i = 1, j
if (mod(j,i) == 0) THEN
sum = sum + i
end IF
continue
end do
if (sum -j. ge. j) then
PRINT*,"The number", j ," is abundant\n"
!else
!PRINT*,"The number", j," is not abundant\n"
endif
! end first if
end if
! end first do
end do
END PROGRAM abundant_odd
Results:
--------
C:\\Fortran90>abundant
Enter an integer : -->
8
The number is not abundant
C:\\Fortran90>abundant
Enter an integer : -->
24
The number 24 is abundant
C:\\Fortran90>abundant_odd
Enter an integer : -->
5000
The number 945 is abundant
The number 1575 is abundant
The number 2205 is abundant
The number 2835 is abundant
The number 3465 is abundant
The number 4095 is abundant
The number 4725 is abundant
C:\\Fortran90>