发布网友
共1个回答
热心网友
type bit=array[1..10]of longint;
var i,n:longint;
a:bit;
falg:boolean;
procedure sort;
var i,j:integer;
t:longint;
begin
for i:=1 to 9 do
for j:=i+1 to 10 do
if a[i]>a[j] then
begin
t:=a[i];a[i]:=a[j];a[j]:=t;
end;
end;
function BinarySearch(num:longint;var b:bit):longint;
var low,mid,high:longint;
begin
low:=1; high:=n;
mid:=(low+high) div 2;
while (low<=high) and (b[mid]<>num) do
begin
if b[mid]>num then high:=mid-1;
if b[mid]<num then low:=mid+1;
mid:=(low+high) div 2;
end;{while}
if low>high then BinarySearch:=0 else BinarySearch:=mid;
end;{function}
begin
n:=10;
for i:=1 to n do read(a[i]);
sort;
read(i);//i就是题目中的x
write(BinarySearch(i,a));
end.{main}