int iterativeBinarySearching(int[] array, int value): #header
  Test if the array exists and has a valid length. #ifNull
  Set nrElems = number of array elements. #getArrayLength
  Set lower boundary of current partition l = 0. #installLMarker
  Set upper boundary of current partition r = nrElems - 1. #installRMarker
  Set middle of current partition mid = (l + r) / 2. #installMidMarker
  While r > l and array[mid] != value: #whileLoop
    If value < array[mid]: #ifLess
      Set r = mid - 1. #continueLeft
    Otherwise:
      Set l = mid + 1. #continueRight
    Set mid = (l + r) / 2. #updateMidElem
  If array[mid] = value: #checkFound
    return mid. #found
  Otherwise:
    return -1. #notFound