Program to find the perfect numbers between a given range

Thursday, December 4th, 2008

The program is to find all the perfect numbers inside the user defined range. A perfect number is one, whose sum of devisors is equals the number itself.

Logic: This is advanced version of the previous program. Here, user need to enter two numbers as the lower and upper limits for the iteration loop to find the perfect number between that. The outer for loop traces the iteration till the limit, wherein each of iteration inner for loop checks the present number is perfect or not, with the perfect number’s logic. If it is, it prints out the present number.

In this program, both the lower limit and the upper limit are variables, and so is flexible. These three programs show, how we can upgrade the logic to make the code flexible one.

The similar algorithm can be used to find the prime numbers inside a given range.

Program to find the perfect numbers between a given range

#include<stdio.h>
#include<math.h>
void main()
{
int i, n, sum, lim_low, lim_up;
clrscr();
printf(“nnt ENTER THE LOWER LIMIT…: “);
scanf(“%d”, &lim_low);
printf(“nnt ENTER THE UPPER LIMIT…: “);
scanf(“%d”, &lim_up);
printf(“nnt THE PERFECT NUMBER ARE..:”);
for(n=lim_low+1; n<lim_up; n++)
{
sum = 0;
for(i=1; i<n; i++)
if(n%i == 0)
sum = sum + i;
if (sum == n)
printf(“nnttt%d”,n);
}
getch();
}

Download exe and source code here.

Avatar Image

Author Name :
Ranjith

Total : 0 Comment


Leave a Reply

Question and Answer
C/C++ Unix & Linux Wordpress
Source codes
C C++ Java

Free email signup