C program to generate divisors of an integer

#include<stdio.h>
#include<conio.h>

void main()
{
int i,n;
clrscr();  //to clear the screen

printf(“Enter any number:”);
scanf(“%d”,&n);
printf(“nDivisors of %d are”,n);

for(i=1;i<n/2;++i)
if(n%i==0)
printf(” %d”,i);
getch();  //to stop the screen
}


2 thoughts on “C program to generate divisors of an integer

  1. abdelrhman hamdy metwaly

    This algorithm is O(n) complexity
    There is another method to calculate the divisors in O(sqrt(n)) complexity

    vector d;
    void genDivisors(int num){
    d.clear();
    int i=1;
    for(;i*i<num;i++)
    if(num%i==0) {d.push_back(i),d.push_back(num/i);}

    if(i*i==num)d.push_back(i);
    sort(d.begin(),d.end());
    }

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *