Sortare (Bule)

#include <iostream>
using namespace std;
int main()
{
 int n,i,v[100],OK,aux;
 cin>>n;
 for(i=1;i<=n;++i)
  cin>>v[i];
 do{OK=0;
    for(i=1;i<=n-1;++i)
    if(v[i]>v[i+1]) {aux=v[i];v[i]=v[i+1];v[i+1]=aux;OK=1;}
   }
 while(OK==1);
 for(i=1;i<=n;++i)
  cout<<v[i]<<" ";
 return 0;
}
Advertisements

Cautarea binara

#include <iostream>
using namespace std;
int main()
{
 int m,n,i,j,v[100],x,OK;
 cin>>n>>x;
 for(i=1;i<=n;++i)
  cin>>v[i];
 i=1;
 j=n;
 OK=0;
 while(i<=j && OK==0)
 {
  m=(i+j)/2;
  if(x==v[m])OK=1;
  else if(x>v[m])i=m+1;
  else j=m-1;
 }
 if(OK==1) cout<<„DA”;
 else cout<<„NU”;
 return 0;
}