19(10)=31(6), 33(10)=53(6).
А теперь в этом диапазоне перебираем варианты с тройками, не выходя за пределы цифры 5:
31, 32, 33, 34, 35, 43, 53
Всего троек будет восемь.
Короче, я с теорией не работаю, поэтому объясню алгоритм более практичней. Итак, нам нужно проверить каждый элемент массива и выяснить, является ли он трехзначным числом. Какой-то переменной мы присваем значение 1000. И как только мы находим трехзначное число, мы проверяем ниже ли это число той переменной(в первый раз, соответственно да). если ответ положительный, то присваем переменной значение числа, сс которым мы работали и которое, естественно меньше. Теперь проверяем дальше трехзначные числа. Если они ниже переменной, то присваевам их к этой же переменной. В конце цикла, переменная будет иметь значение минимального 3х знач элемента. Если переменная по прежнему равна 1000. Значит 3х знач числа не нашлось и мы выводим надпись "таких чисел нет".
45 проверено это точно верный ответ
Var i,s: integer;
<span>begin
</span><span> i:=1; s:=0;
</span><span> repeat
</span><span> s:=s+i;
</span><span> i:=i*2;
</span><span> until i>256;
</span><span> writeln('s = ',s);
</span><span>end.
второй вариант:
var s: integer;
begin
</span> s:=1 shl 9 - 1;
<span> writeln('s = ',s);
</span><span>end.
</span><span>
s = 511
</span>