Q. Write A Program To Obtain The GCD of Two Numbers Recursively. Program Code
Q. Write A Program To Obtain The GCD of Two Numbers Recursively. Program Code
Program Code:
#include <stdio.h>
intgcd(intn,int m)
{ if(m<=n &&n%m == 0)
return m;
if(n < m)
returngcd(m,n);
else
returngcd(m,n%m);
intmain()
{ intn,m,divisor;
scanf("%d%d",&n,&m);
divisor=gcd(n,m);
return 0;
}
Output:
Q.Write a program to compute the Binary Search.
Program Code:
#include<iostream>
int binary(intnum[10],intbeg,intend,int y)
intmid,z,pos=0;
if(beg<=end)
mid=(beg+end)/2;
if(num[mid]==y)
pos=mid;
}else{
if(y<num[mid])
end=mid-1;
pos=binary(num,beg,end,y);
else
beg=mid+1;
pos=binary(num,beg,end,y);
}
else
pos=-1;
returnpos;
int main()
int a[10],i,item,pos;
cout<<"=============================\n";
for(i=0;i<10;i++)
cin>>a[i];
cin>>item;
pos=binary(a,0,9,item);
if(pos==-1){
}else{
cout<<"Number found at position : "<<(pos+1)<<"\n\n";
return 0;
Outputs:
Number Found
Number Not Found
Q. Write a program to compute the Quick Sort.
Program Code:
#include<iostream>
void quicksort(int*,int,int);
int split(int*,int,int);
int main()
intarr[10];
int i;
for(i=0;i<10;i++)
cin>>arr[i];
for(i=0;i<=9;i++)
cout<<"%d\t",arr[i];
quicksort(arr,0,9);
for(i=0;i<=9;i++)
cout<<"%d\t",arr[i];
return 0;
int i;
if(upper>lower)
i=split(a,lower,upper);
quicksort(a,lower,i-1);
quicksort(a,i+1,upper);
}}
intp,q,t;
p=lower+1;
q=upper;
int i=a[lower];
while(q>=p)
while(a[p]<i)
p++;
while(a[q]>i)
q--;
if(q>p)
t=a[p];
a[p]=a[q];
a[q]=t;
}
t=a[lower];
a[lower]=a[q];
a[q]=t;
return q;
Output:
Q. Write a program to compute the Merge Sort.
Program Code:
#include <iostream>
int a[50];
void merge(int,int,int);
voidmerge_sort(intlow,int high)
int mid;
if(low<high)
mid=(low+high)/2;
merge_sort(low,mid);
merge_sort(mid+1,high);
merge(low,mid,high);
inth,i,j,b[50],k;
h=low;
i=low;
j=mid+1;
while((h<=mid)&&(j<=high))
{
if(a[h]<=a[j])
b[i]=a[h];
h++;
else
b[i]=a[j];
j++;
i++;
if(h>mid)
for(k=j;k<=high;k++)
b[i]=a[k];
i++;
else
for(k=h;k<=mid;k++)
b[i]=a[k];
i++;
}
}
for(k=low;k<=high;k++) a[k]=b[k];
int main()
intnum,i;
cin>>num;
cout<<endl;
for(i=1;i<=num;i++)
cin>>a[i] ;
merge_sort(1,num);
cout<<endl;
cout<<endl<<endl;
for(i=1;i<=num;i++)
cout<<a[i]<<" ";
cout<<endl<<endl<<endl<<endl;
return 0;
}
Output:
Ques –Wap to implement prims algo?
#include<iostream.h>
#define MAX 10
class prims
{
private : int cost[MAX][MAX], tree[MAX][MAX];
int n;
public : void readmatrix();
int spanningtree(int);
void display(int);
};
int main()
{
int source, treecost;
prims pri;
pri.readmatrix();
cout << "\nEnter the Source : ";
cin >> source;
treecost = pri.spanningtree(source);
pri.display(treecost);
return 0;
}