السلام عليكم اخوتي :
أنا بدأت بتعلم خوارزميات الترتيب وبدأت بتطبيقها على السي ++ لكن عندي أخطاء بالأكواد أتمنى منكم مساعدتي لتصحيحها ,
البرنامج الأول مطلوب منه يعمل باينري سيرش بس ماتنفذ بالطريقة الصحيحة!
------------------
#include<iostream>
using namespace std;
int BinarySearch ( int a[], int n,int key);
int main()
{
int a[5];
int m,k;
cout<<"please enter the elements :"<<endl;
BinarySearch(a,m,k);
for(int i=0;i<5;i++)
cin>>a;
return 0;
}
int BinarySearch ( int a[], int n,int key)
{
int right = 0, left = n-1, middle;
while( right <= left)
{
middle = (right + left)/2;
if (key == a[middle] )
return middle; //return the position
else
if( key < a[middle])
left = middle -1;
else
right = middle +1;
}
return -1; //-1 means not found
}

