26 букв и 10 цифр составляют алфавит мощностью 36 знаков. Если кодировать их числами от 0 до 35, а 2⁵ < 35 < 2⁶, то для одного знака потребуется до 6 бит. По условию "Каждый символ кодируется одинаковым и минимально возможным количеством бит", поэтому принимаем размер 6 бит. Длина номера 7 символов и суммарно они займут 7×6 = 42 бита. Но по условию номер должен занимать целое число байт. В байте 8 бит, тогда для номера нужно отвести 42/8 = 6 байт с округлением до целых в большую сторону. 20 номеров потребуют для хранения 6×20 = 120 байт.
var a: array[1..nn, 1..nn] of integer; i, j, n, k: integer;
begin Write('Введите число строк (столбцов) матрицы: '); Readln(n); Randomize; Writeln('Исходная матрица'); for i := 1 to n do begin for j := 1 to n do begin a[i, j] := Random(101) - 50; Write(a[i, j]:4) end; Writeln end; Writeln('Количество отрицательных элементов по столбцам'); for j := 1 to n do begin k := 0; for i := 1 to n do if a[i, j] < 0 then Inc(k); Write(k:4) end; Writeln end.
ответ: 120 байт