//Видимо, это одна задача, так как "изменения" во второй не указаны //Pascal ABC.NET v3.1 сборка 1172
Const n=20;
Var ar:array[1..n] of integer; i:integer; begin randomize; writeln('First array:'); for i:=1 to n do begin ar[i]:=random(10)-3; write(ar[i]:4); if ar[i]>0 then ar[i]:=ar[i]*2 else ar[i]:=0; end; writeln; writeln('Final array:'); for i:=1 to n do write(ar[i]:4); end.
Каждая буква в алфавите кодируется определенным количеством бит, чем больше букв, тем больше бит требуется для кодирования. Нам дано, что каждое слово состоит из 5 букв и при этом 1024мя словами исчерпывается словарный запас. Значит если в алфавите Х букв, то на первом месте слове может быть Х вариантов, на втором столько же и так далее. Итого комбинаций Х в степени 5. Значит Х в степени 5 = 1024. Отсюда Х=4. 4 буквы в алфавите. Закодировать 4 буквы - 4 варианта можно 2мя битами. 2 в степени 2 =4. Значит одна буква несет 2 бита информации.