Алфавит - это счетное множество.
Мощностью такого множества называется количество элементов этого множества.
В настоящее время термин килобайт не однозначен. Возьмем его значение (наверняка сейчас так и есть в школьной программе)
1 килобайт = 1024 байта.
Итого:
У нас 256*2 = 512 символов, которые занимают 1024/16 = 64 байта.
Таким образом один символ занимает 64/512 = 1/8 байта или один бит. (В каждом байте ровно 8 бит).
Один бит информации это нолик или единичка. то есть имеет всего два значения.
Это и есть ответ к задаче:
Мощность алфавита: 2
uses crt;
var
i: integer; {счетчик}
s: integer;
begin
clrscr; {очистка экрана}
writeln ('Программа выводит числа от 1 до 99, сумма цифр которых равна числу S');
writeln ('Введите число S, от 0 до 18: ');
{ввод числа S с проверкой на корректность}
repeat
readln (s);
if (s>18) or (s<0) then
writeln ('Неверный ввод. Повторите')
until (s<=18) and (s>=0);
{вывод нужных чисел на экран (цикл с предусловием)}
for i := 1 to 99 do
if ((i div 10) + (i mod 10) = s) then {div дает целую часть, mod - остаток от деления}
write (i, ' ');
repeat until keypressed; {пустой цикл для задержки экрана до нажатия клавиши}
end.