CLU példaprogramok

 
Logaritmikus keresés

A paraméterként kapott tömbben a logaritmikus keresést megvalúsítú eljárás.
[while; if-then-elseif-else; variable-declaration] (CLU forrás)


ai=array[int]

Search=proc (a:ai,x:int) returns (int)
  % logaritmikus keres‚s
  low:int := ai$low(a)
  high:int := ai$high(a)
  while (low<=high) do
    mid:int := (low+high)/2
    val:int := a[mid]
    if x<val then high:=mid-1
             elseif x=val then return (mid)
             else low:=mid+1
    end
  end
  return (ai$high(a)+1)
end Search