Cod sursa(job #211016)

Utilizator crissuMarin Cristina crissu Data 30 septembrie 2008 13:03:54
Problema Cautare binara Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
# include<stdio.h>
void citire(int *v, int &n){
	scanf("%d",&n);
	for(int i=0;i<n;i++)
		scanf("%d",&v[i]);
}
int cautare(int x, int *v, int p, int u){
	if(p==u){
		if(x==v[p])
			return p;
		else
			printf("nr nu se afla in vector");
	}
	if(x<=v[(p+u)/2])
		return cautare(x,v,p,(p+u)/2);
	return cautare(x,v,(p+u)/2+1,u);
}
int main(){
	int x,n,v[100];
	freopen("date.in","r", stdin);
	freopen("date.out","w", stdout);
	scanf("%d",&x);
	scanf("%d",&n);
	for(int i=0;i<n;i++)
		scanf("%d", &v[i]);
	printf("%d",cautare(x,v,0,n-1));
	return 0;
}