2^5=32 - i=5 бит 30 байт*8=240 бит 240 бит/5=48 символов
mikhailkirakosyan
19.03.2021
Procedure ShellStr(var s: string); { сортирует символы строки методом Шелла } var i, j, n, step: integer; c: char; begin s := Trim(s); n := Length(s); step := n div 2; while step > 0 do begin for j := n - step downto 1 do begin i := j; while i <= n - step do begin if s[i] > s[i + step] then begin c := s[i]; s[i] := s[i + 1]; s[i + 1] := c end; i := i + step end end; step := step div 2 end end;
procedure TrimNullsLeft(var s: string); { Усекает левые (незначащие нули) в строке s } var i, n: integer; begin i := 1; n := Length(s); while (s[i] = '0') do i := i + 1; s := Copy(s, i, n - i + 1) end;
var p, ns: integer; s, M, N: string; ml, nl: integer; f: text;
begin Assign(f,'input.txt'); Reset(f); Readln(f,s); Close(f); Assign(f,'output.txt'); Rewrite(f); ns := Length(s); p := Pos(' ', s); ml := p - 1; M := Copy(s, 1, ml); ShellStr(M); TrimNullsLeft(M); ml := Length(M); N := Copy(s, p + 1, ns - p); ShellStr(N); TrimNullsLeft(N); nl := Length(N); if ml < nl then Writeln(f,M) else if nl < ml then Writeln(f,N) else if M < N then Writeln(f,M) else Writeln(f,N); Close(f); Writeln('Программа завершила работу') end.
Lenamihluk50
19.03.2021
Const n = 4; Spring = [3..5];{ Номера весенних месяцев }
var ds: array[1..n] of string; i, d, m, y, dmax, mmax, ymax, k: integer; s, s1: string;
begin Writeln('Вводите даты в формате "день месяц год" через пробел'); k := 0; dmax := 0; mmax := 0; ymax := 0; for i := 1 to n do begin Write(i, ': '); Readln(d, m, y); if (m in Spring) then begin k := k + 1; Str(d, s); Str(m, s1); s := ' ' + s + '.' + s1 + '.'; Str(y, s1); ds[k] := s + s1 end; if ymax < y then begin dmax := d; mmax := m; ymax := y end else if ymax = y then if mmax < m then begin dmax := d; mmax := m; ymax := y end else if dmax < d then begin dmax := d; mmax := m; ymax := y end end; Writeln; if k > 0 then begin Write('Весенние даты:'); for i := 1 to k do Write(ds[i]); Writeln; end; Writeln('Самая поздняя дата ', dmax, '.', mmax, '.', ymax) end.
Тестовое решение:
Вводите даты в формате "день месяц год" через пробел 1: 25 8 2010 2: 3 4 2013 3: 18 5 2011 4: 31 12 2012
Весенние даты: 3.4.2013 18.5.2011 Самая поздняя дата 3.4.2013
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Сообщение, записанное буквами 32-символьного алфавита, содержит количество информации в тексте - 30 байтов. сколько символов в тексте?
30 байт*8=240 бит
240 бит/5=48 символов