<span>Код Бодо - длина кодов всех
символов алфавита одинакова и равна пяти. В данном случае не возникает проблемы
отделения букв друг от друга.Каждая пятерка сигналов — это знак текста.</span>
А у Морзе каждая буква алфавита кодируется
последовательностью коротких сигналов в его случае - точек, и длинных сигналов - тире. Буквы
отделяются друг от друга паузами, то есть отсутствием сигналов.
Примерно так.
............................30
Сначала считаем сколько символов, 20 символов логина + 10 символов пароля + М и Ж, то есть 20+10+2=32.
Для хранения каждого символа требуется 5 бит, так как 2^5=32.
Теперь считаем одного пользователя 15 символов логина + 10 символов пароля + 1 символ пола (М или Ж), получаем 26.
26*5=130 бит. Переводим в байты. Ближнее большее число делящееся на 8 это 17. Так как 17*8=136, а 16*8=128, не хватает до 130. Получаем на пользователя 17 байт, всего у нас 20 пользователей, 20*17=340, итого 340 байт.
<span>program</span> Project1;
uses crt;
<span>const</span>
<span>//Разделители слов.</span>
D <span>=</span><span>[</span><span>'.'</span><span>,</span><span>','</span><span>,</span><span>':'</span><span>,</span><span>';'</span><span>,</span><span>'!'</span><span>,</span><span>'?'</span><span>,</span><span>'-'</span><span>,</span><span>' '</span><span>,</span> #<span>9</span><span>,</span> #<span>10</span><span>,</span> #<span>13</span><span>]</span>;
<span>var</span>
S <span>:</span><span>String</span>;
i<span>,</span> Cnt<span>,</span> Len <span>:</span><span>Integer</span>;
<span>begin</span>
<span>repeat</span>
<span>Writeln</span><span>(</span><span>'Задайте строку:'</span><span>)</span>;
<span>Readln</span><span>(</span>S<span>)</span>;
Len <span>:=</span> Length<span>(</span>S<span>)</span>;
Cnt <span>:=</span><span>0</span>;
<span>for</span> i <span>:=</span><span>1</span><span>to</span> Len <span>do</span><span>begin</span>
<span>//Пропускаем разделители.</span>
<span>if</span> S<span>[</span>i<span>]</span><span>in</span> D <span>then</span> Continue;
<span>//Отслеживаем начало слова.</span>
<span>if</span><span>(</span>i <span>=</span><span>1</span><span>)</span><span>or</span><span>(</span>S<span>[</span>i <span>-</span><span>1</span><span>]</span><span>in</span> D<span>)</span><span>then</span><span>begin</span>
<span>if</span> S<span>[</span>i<span>]</span><span>in</span><span>[</span><span>'a'</span><span>,</span><span>'A'</span><span>]</span><span>then</span> Cnt <span>:=</span> Cnt <span>+</span><span>1</span>;
<span>end</span>;
<span>end</span>;
<span>Writeln</span><span>(</span><span>'В заданной строке найдено '</span><span>,</span> Cnt<span>,</span><span>' слов,'</span><span>)</span>;
<span>Readln</span><span>(</span>S<span>)</span>;
<span>until</span> S <> <span>''</span>;
<span>end</span>.