Информационное сообщение объёмом 1350 битов (дано I) состоит из 450 символов (дано K). Каков информационный вес каждого символа этого сообщения (найти i)? В ответе запишите одно число вес каждого символа этого алфавита в битах.ЕДИНИЦЫ ИЗМЕРЕНИЯ ПИСАТЬ НЕ НАДО. *
Это обязательный вопрос.
Для записи научного текста использовался 256-символьный алфавит (дано N). Какой объём информации в Килобайтах (найти I) содержат 15 страниц текста, если на каждой странице расположено 32 строки по 64 символа в строке (K = 15 страниц*32 строки*64 символа)? Обратите внимание: когда на первом шаге решения задачи вы получите вес одного символа i, он будет измеряться в битах. Следовательно последующие вычисления у вас будут получаться в битах. В ответе нужно указать число в Килобайтах. Для этого необходимо биты перевести в килобайты (стр. 47 учебника)
.
.
Информационное сообщение объёмом 3 Кбайт (дано I) состоит из 3072 символов (дано К). Сколько символов содержит алфавит (найти N), при которого было записано это сообщение ? В ответе запишите одно число, количество символов, которое содержит алфавит. *
.
.
Жители страны Зазеркалья пишут письма, пользуясь 17-символьным алфавитом (дано N1 - мощность алфавита 1). Жители страны Мермедия используют 32-символьным алфавитом (дано N2 - мощность алфавита 2). Вожди племён обменялись письмами. Письмо жителей страны Зазеркалья содержит 100 символов (дано K1 - количество символов в сообщении 1), а письмо жителей страны Мермедия — 50 символов (дано K2 - количество символов в сообщении 2). Сравните объёмы информации, содержащиеся в письмах. В ответе запишите одно число ( во сколько раз информационный объем I1 письма жителей страны Зазеркалья больше информационного объема I2 жителей страны Мермедия). *
.
.
Реферат учащегося по информатике имеет объём 20 Кбайт. Каждая страница реферата содержит 32 строки по 64 символа в строке, мощность алфавита — 256. Сколько страниц в реферате? В ответе укажите одно число, количество страниц) *
.
.
{ сортирует символы строки методом Шелла }
var
i, j, n, step: integer;
c: char;
begin
s := Trim(s);
n := Length(s);
step := n div 2;
while step > 0 do
begin
for j := n - step downto 1 do
begin
i := j;
while i <= n - step do
begin
if s[i] > s[i + step] then
begin
c := s[i];
s[i] := s[i + 1];
s[i + 1] := c
end;
i := i + step
end
end;
step := step div 2
end
end;
procedure TrimNullsLeft(var s: string);
{ Усекает левые (незначащие нули) в строке s }
var
i, n: integer;
begin
i := 1; n := Length(s);
while (s[i] = '0') do i := i + 1;
s := Copy(s, i, n - i + 1)
end;
var
p: integer;
s, M, N: string;
f: text;
begin
Assign(f, 'input.txt');
Reset(f);
Readln(f, s);
Close(f);
Assign(f, 'output.txt');
Rewrite(f);
s := Trim(s);
p := Pos(' ', s);
M := Copy(s, 1, p - 1);
N := Copy(s, p + 1, Length(s) - p);
s := M + N;
ShellStr(s);
TrimNullsLeft(s);
Writeln(f, s);
Close(f);
Writeln('Программа завершила работу')
end.