Cod sursa(job #415510)
| Utilizator | Data | 11 martie 2010 14:41:43 | |
|---|---|---|---|
| Problema | Cautare binara | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
#include<fstream.h>
long a[100],n,i,x,st,dr,gasit,m;
int main()
{
ifstream f("cautbin.in");
ofstream g("cautbin.out");
f>>n>>x;
for(i=1;i<=n;i++)
f>>a[i];
f.close();
dr=1;
dr=n;
do
{
m=(st+dr)/2;
if(a[m]==x)
{
gasit=1;
g<<x<<" "<<m;
}
if(a[m]<x)
st=m+1;
else
dr=n-1;
}while(st<=dr&&!gasit);
if(!gasit)
//g<<x<<"se gaseste pe pozitia"<<m;
g<<"nu se gaseste"<<" ";;
return 0;
}