Program llllll;
var A: string;
k : integer;
begin
readln(A);
k := length(A);
writeln(A[1], A[3], A[k]);
end.
Что происходит в программе? Мы берем А с индексами 3, 1 а также с индексом k, где k-- длина всего слова, которую мы определяем с помощью функции length.
Var
i, s: integer;
begin
s := 0;
for i := -5 to 28 do
s := s - i;
writeln(s);
end.
Тут нужно объяснить: каждое слово представляет собой некоторое непустое множество документов, а значки "I" и "&" означают следующее:
I -это объединение двух множеств,
& -это пересечение двух множеств.
Еще возможны скобки, которые, как и обычной арифметике, указывают порядок действий.
Отношения больше или меньше - это вложенность множеств друг в друга (то есть одно из множеств является подмножеством другого), это не всегда выполняется, но в данном случае выполняется.
Самое большое множество это второе, потом первое - его подмножество, затем третье - подмножество первого, а четвертое - подмножество третьего. В порядке возрастания количества документов - это 4) 3) 1) 2).
Может что не ясно?
| -это логическое "ИЛИ",
& -это логическое "И".
1. Находим количество бит информации, приходящихся на 1 символ по формуле N=2^i, 64=2^i, ⇒ i=6.
2. Подсчитываем количество символов в сообщении, оно равно 24.
3. Количество символов умножаем на количество бит, приходящихся на 1 символ: 24*6=144 бит /8 = 18 байт