Короче, я с теорией не работаю, поэтому объясню алгоритм более практичней. Итак, нам нужно проверить каждый элемент массива и выяснить, является ли он трехзначным числом. Какой-то переменной мы присваем значение 1000. И как только мы находим трехзначное число, мы проверяем ниже ли это число той переменной (в первый раз, соответственно да). Если ответ положительный, то присваем переменной значение числа, сс которым мы работали и которое, естественно меньше. Теперь проверяем дальше трехзначные числа. Если они ниже переменной, то присваевам их к этой же переменной. В конце цикла, переменная будет иметь значение минимального 3 х знач элемента. Если переменная по прежнему равна 1000. Значит 3 х знач числа не нашлось и мы выводим надпись «таких чисел нет». Если я объяснил не слишком понятно, то покажу на примере: var a: array [1… 30] of real; i,min: real; begin {здесь ты сама как-нибудь вводишь элементы цикла. Или с файла, либо с вводом} min: =1000; for i: =1 to 30 do begin If (a[i] div 100>0) and (a[i] div 100<10) then if a[i]1000 then writeln (min) else writeln ('таких чисел нет! ') end. Ну наверно так… Удачи!