Вообще говоря, сейчас не практикуется такое ужимание информации, разве что в супер ограниченной памяти, потому такие приемы не актуальны.
Для кодирования каждого символа алфавита нужно 5 бит (32 = 2^5) Т.к. Е и Ё считаются совпадающими, то всего в алфавите 32 символа Поскольку мы знаем, где расставленны прописные буквы, то теоретически их сохранять не обязательно, при выводе их можно подставить автоматически Тогда для хранения имени + отчества + фамилии нужно (15 + 12 + 15) * 5 = 210 бит Для года рождения есть 8 (с 1992 по 1999) вариантов, поэтому для него нужно отвести 3 бита (8 = 2^3) Всего для одной записи требуется 210 + 3 = 213 бит = 26.625 байт ~= 27 байт
И если так дорого место, то я рекомендую дополнительно воспользоваться архиватором типа zip/rar
Var j, i, x:integer; a: array [1..20] of integer; begin randomize; writeln(); for i := 1 to 20 do a[i] := random(1000); for j := 2 to 10 do for i := 10 downto j do if a[i] < a[i - 1] then begin x := a[i]; a[i] := a[i - 1]; a[i - 1] := x; end; for j := 12 to 20 do for i := 20 downto j do if a[i] > a[i - 1] then begin x := a[i]; a[i] := a[i - 1]; a[i - 1] := x; end; for i := 1 to 20 do if i mod 2 = 0 then a[i] := 3 * a[i] else a[i] := 2 * a[i]; writeln(); for i := 1 to 20 do write(a[i], ' '); end.
ты можешь сам(а) делать
Объяснение:
а вот казахский язык я не знаю