<em>// PascalABC.NET 3.2, сборка 1374 от 10.01.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
Writeln('*** Исходная матрица ***');
var a:=MatrRandom(4,8,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var sa:=a.Rows.SelectMany(x->x);
Writeln('Положительные элементы:');
sa.Where(x->x>0).Println;
Write('Максимальный по модулю элемент: ',sa.Max(x->abs(x)));
end.
<u>Пример</u>
*** Исходная матрица ***
80 9 -8 32 37 75 43 -72
71 -79 94 -20 -64 -37 -98 53
19 84 -63 -4 17 5 38 -86
-32 56 87 -43 28 -40 -35 24
--------------------------------
Положительные элементы:
80 9 32 37 75 43 71 94 53 19 84 17 5 38 56 87 28 24
Максимальный по модулю элемент: 98
234 МБ это 234000 в бiтах
1. 2^10 = 1024
2. 5 бит
3. 12 бит
4. 35 бит
вроде так
Робот воспринимает информацию.
Понятно, что 90 = Р и 93 = С - все четыре слова заканчиваются на эти буквы. Теперь смотрим: есть два слова, начинающиеся на одну букву: МАРС и МОРС. Ищем среди последовательностей две, которые тоже начинаются на одинаковый код. Это 80 84 90 93 и 80 05 90 93. Значит, 80 = М
Теперь ищем последовательности для МАРС и БАРС - у них совпадает вторая буква. Это 80 05 90 93 и 10 05 90 93, откуда имеем 05 = А и 10 = Б, а код 84 = О
Оставшаяся последовательность 87 62 90 93 для слова ПИРС даёт нам буквы 87 = П и 62 = И
Таким образом, СИРОП кодируется так:
93 62 90 84 87