Путь Грауэнвольфа - самый простой и эффективный способ сделать это с массивом:
Либо используйте цикл for, либо создайте временную переменную, которую вы увеличиваете при каждом проходе.
Что, конечно, выглядело бы так:
int[] values = { 5, 14, 29, 49, 99, 150, 999 };
for (int key = 0; key < values.Length; ++key)
if (search <= values[key] && !stop)
{
// set key to a variable
}
В .NET 3.5 вы также можете использовать более функциональный подход, но он немного более многословен на сайте и, вероятно, будет опираться на пару функций поддержки для посещения элементы в IEnumerable. Избыток, если это все, что вам нужно, но удобно, если вы склонны много обрабатывать коллекцию.