Given a number x and an array of non-decreasing numbers, find the index of the largest array element less than or equal to x.
VARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- x I Value to search against n I Number elements in array array I Array of possible lower bounds The function returns the index of the last element of array that is less than or equal to x.
x Integer. n Total number of elements in array. array Array of integers which forms a non-decreasing sequence. The elements of array need not be distinct.
The function returns the index of the highest-indexed element in the input array that is less than or equal to x. The routine assumes the array elements are sorted in non-decreasing order. Indices range from 0 to n-1. If all elements of array are greater than x, this routine returns the value -1.
Note: If you need to find the first element of the array that is greater than x, simply add 1 to the result returned by this function and check to see if the result is within the array bounds given by n.
1) Let array be assigned the following values: array = -2; array = -2; array = 0; array = 1; array = 1; array = 11; The table below demonstrates the behavior of lstlei_c: Call Returned Value ========================= ============== lstlei_c ( -3, 6, array ) -1 lstlei_c ( -2, 6, array ) 1 lstlei_c ( 0, 6, array ) 2 lstlei_c ( 1, 6, array ) 4 lstlei_c ( 12, 6, array ) 5
If the sequence of elements in array is not non-decreasing, the program will run to completion but the index found will not mean anything.
Error free. 1) In the case that n is input with value less than or equal to zero, the function returns -1. 2) If the input array is not sorted in increasing order, the output of this routine are undefined. No error is signaled.
N.J. Bachman (JPL) W.L. Taber (JPL)
-CSPICE Version 1.0.0, 10-JUL-2002 (NJB) (WLT)
last integer element less_than_or_equal_to