Перепишите программу на паскале, исправив ошибки: program massiv; var a: array(-10..10) of integer; begin for i: =1 to 20 do read(a[i]); for i: =1 to 20 do a[i]: =a[i]/10; for i: =1 to 20 do write(a[i]) end.
Не важно, как кодируется один символ. Фактически в этом сообщении 3,95 бита информации. Но в несжатом виде на диске это сообщение займёт 44 * 16 / 8 = 44 * 2 = 88 байтов.
"Какое количество информации оно несет ?" - тут мы знать не можем, не имея перед собою это сообщение. Но можем такую же характеристику посчитать, как для предыдущего сообщения. Считаем число битов, нужных для 12-символьного алфавита:
log2(12) ~= 3,6, округляем вверх, итого 4 бита. 4 * 120 = 480 битов. Если учесть возможность записи по два 4-битовых символа в один байт, то получаем 60 байтов.
Program massiv;
Var a:array[-10..10] of integer;
i:integer;
Begin
For i:=1 to 20 Do
begin
Read(a[i]);
a[i]:= round(a[i]/10);
Write(a[i]);
End.