Saturday, May 8, 2010

LCM GCD implementation

//Finding LCM and GCD

#include
#include

void main()
{
int a[20],n,i,j,c,max,min;
unsigned long prod;
clrscr();
printf("Enter the no. of entries: ");
scanf("%d",&n);
printf("Enter the entries:");
for(i=0;i {
scanf("%d",&c);
if(c>0)
a[i]=c;
else
{
printf("Invalid Entry");
return;
}
}

max=a[0];
for(i=0;i if(a[i]>=max)
max=a[i];
min=a[0];
for(i=0;i if(a[i] min=a[i];

for(i=0,prod=1;i prod=prod*a[i];

for(i=max;i<=prod;i+=max)
{

c=0;
for(j=0;j if(i%a[j]==0)
c+=1;
if(c==n)
{ printf("The LCM of the nos: %d",i);
break;
}
}

for(i=min;i>0;i--)
{
if (min%i==0)
{
c=0;
for(j=0;j if(a[j]%i==0)
c+=1;
}
if(c==n)
{
printf("The GCD of the nos: %d",i);
break;
}
}
getch();
}

No comments: