using
System;
class
GFG {
public
static
void
Main()
{
string
[] arr =
new
string
[5] {
"ABCD"
,
"IJKL"
,
"XYZ"
,
"EFGH"
,
"MNOP"
};
Console.WriteLine(
"The original Array"
);
display(arr);
Console.WriteLine(
"\nsorted array"
);
Array.Sort(arr);
display(arr);
Console.WriteLine(
"\n1st call"
);
object
obj1 =
"EFGH"
;
FindObj(arr, obj1);
Console.WriteLine(
"\n2nd call"
);
object
obj2 =
"ABCD"
;
FindObj(arr, obj2);
}
public
static
void
FindObj(
string
[] Arr,
object
Obj)
{
int
index = Array.BinarySearch(Arr, 0, 3,
Obj, StringComparer.CurrentCulture);
if
(index < 0)
{
Console.WriteLine(
"The object {0} is not "
+
"found\nNext larger object is"
+
" at index {1}"
, Obj, ~index);
}
else
{
Console.WriteLine(
"The object {0} is at"
+
" index {1}"
, Obj, index);
}
}
public
static
void
display(
string
[] arr)
{
foreach
(
string
g
in
arr)
{
Console.WriteLine(g);
}
}
}