Показать сообщение отдельно
  #2  
Старый 20.01.2008, 17:47
Аватар для Rokuell
Rokuell Rokuell вне форума
Активный
 
Регистрация: 27.12.2006
Адрес: Псков
Сообщения: 274
Версия Delphi: Delphi 7
Репутация: 497
Сообщение

Алгоритм таков:
1. Пробегаешь по массиву циклом, сравнивая данное число с каждым, имеющимся в массиве.
2. Если это число содержиться в массиве - делай что там тебе надо, если нет, то:
3. Заводишь две целые переменные -
одна будет напр indx:integer; indx:=1;
а вторая de:integer; de:=Abs(A[1]-N); где N - данное число, A - массив
A[1] - первый элемент массива
4. Пробегаешь опять циклом по массиву начиная со второго элемента
и сравниваешь, если Abs( A[i] - N ) < de то de:=Abs( A[i] - N ); indx:=i;
где i - переменная цикла
5. После цикла пишешь N:=A[indx];

PS: кодь сам, т.к я сейчас немогу, надеюсь, объяснил достаточно подробно.
__________________
Велик и могуч наш Object Pascal !
ICQ: 357-591-887
Ответить с цитированием