Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — сумму чисел, оканчивающихся на 4.
2. 1/512 Мбайт = 1024*1/512 Кбайт = 2 Кбайта = 2*1024 байт = 2*1024*8 бит.
Объем одного символа = 2*1024*8 / 2048 = 8 бит
Мощность алфавита = 2^8 = 256 символов
3. Для записи одного из 64 символов требуется log(2)64 = 6 бит (2^6=64)
Количество символов в тексте = 7*16*56
Объем информации = 7*16*56*6 бит = 7*16*56*6 / 8 байт = 7*2*56*6 байт = 4704 байт = 4704/1024 Кбайт ≈ 4,6 Кбайт
4. Для записи одного из 120 номеров требуется log(2)120 ≈ 7 бит (2^7=128). Информационный объем сообщения о результатах 64 лыжников = 64*7 бит = 64*7/8 байт = 56 байт
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),2,5); a.Println;
var b:=a.GroupBy(t->t).Select(t->(t.Key,t.Count)).OrderBy(t->t[0])
.Select(t->t[1]).ToArray;
Writeln('Сдано на 5: ',b[3]);
Writeln('Сдано на 4: ',b[2]);
Writeln('Сдано на 3: ',b[1]);
Writeln('Не допущено: ',b[0])
end.
Пример
n= 20
4 4 3 5 4 5 2 4 4 4 5 4 3 3 4 2 3 2 2 2
Сдано на 5: 3
Сдано на 4: 8
Сдано на 3: 4
Не допущено: 5