You are on page 1of 1

using System;

using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace CautareBinara
{
class Program
{
static void Main(string[] args)
{
StreamReader intrare = new StreamReader("in.txt");
int[] numere;
int n, x;
String linie;
String[] cuvinte;
n = int.Parse(intrare.ReadLine());
numere = new int[n];
linie = intrare.ReadLine();
cuvinte = linie.Split(' ');
for (int i = 0; i < n; i++)
{
numere[i] = int.Parse(cuvinte[i]);
}
x = int.Parse(intrare.ReadLine());
intrare.Close();
StreamWriter iesire = new StreamWriter("out.txt");
iesire.WriteLine(CautareBinara(numere, 0, numere.Length - 1, x));
iesire.Close();
}
public static int CautareBinara(int[] a, int p, int q, int x)
{
if (p > q)
{
return -1;
}
int m;
m = (p + q) / 2;
if (a[m] == x)
{
return m;
}
else
{
if (a[m] < x)
{
return CautareBinara(a, m + 1, q, x);
}
else
{
return CautareBinara(a, p, m - 1, x);
}
}
}
}
}

You might also like