Задача сводится к суммированию элементов массива V с целью нахождения их среднего арифметического. Конечно, такую задачу можно решать и без массива, поскольку нам придется все равно данные вводить с клавиатуры, но уж раз сказано, что "компоненты..." сделаем с массивом.
const n = 7; s = 'PVSCPSV';
var v: array[1..n] of double; i: integer; m: double;
begin Writeln('Вводите суммы ежедневного дохода по дням'); m := 0; for i := 1 to n do begin Write(s[i], ': '); Readln(v[i]); m := m + v[i] end; Writeln('Средний доход за неделю составляет ', m / n:0:3) end.
Тестовое решение:
Вводите суммы ежедневного дохода по дням P: 142539 V: 363135 S: 217432 C: 57395 P: 294722 S: 115390 V: 184933 Средний доход за неделю составляет 196506.571
1. Так как количество байт и бит должно быть одинаковым, у нас нет возможности кодировать числа и буквы по-разному.
2. Всего тогда получается алфавит из 26 + 10 = 36 символов.
3. Нам нужно узнать какой объем информации несет 36 символов. Округляем вверх до 64 (степень двойки). 64 = 2 в 6-ой. Значит, один символ кодируется 6-ю битами.
4. Далее, минимальная ячейка у нас - 1 байт. Половинчатые байты теоретически наверное могут быть, если у нас есть специальный тип данных "номер". Но скорее всего придется смирится с потерей места и закодировать 1 символ 1 байтом.
5. 1 номер = 1 символ * количество символов = 7 байт.
const
n = 7;
s = 'PVSCPSV';
var
v: array[1..n] of double;
i: integer;
m: double;
begin
Writeln('Вводите суммы ежедневного дохода по дням');
m := 0;
for i := 1 to n do
begin
Write(s[i], ': ');
Readln(v[i]);
m := m + v[i]
end;
Writeln('Средний доход за неделю составляет ', m / n:0:3)
end.
Тестовое решение:
Вводите суммы ежедневного дохода по дням
P: 142539
V: 363135
S: 217432
C: 57395
P: 294722
S: 115390
V: 184933
Средний доход за неделю составляет 196506.571
2. Всего тогда получается алфавит из 26 + 10 = 36 символов.
3. Нам нужно узнать какой объем информации несет 36 символов. Округляем вверх до 64 (степень двойки). 64 = 2 в 6-ой. Значит, один символ кодируется 6-ю битами.
4. Далее, минимальная ячейка у нас - 1 байт. Половинчатые байты теоретически наверное могут быть, если у нас есть специальный тип данных "номер". Но скорее всего придется смирится с потерей места и закодировать 1 символ 1 байтом.
5. 1 номер = 1 символ * количество символов = 7 байт.
6. 7 байт * 20 номеров = 140 байт.
ответ: 140 байт.