В условии задачи нечетко указано, какой символ искать: "о" - это может быть и латинская буква, и кириллическая. В программе предполагается, что это латинский символ, в противном случае его достаточно заменить в const на нужный.
const c:char='o'; var s:string; i,k:integer; begin Write('Введите строку: '); Readln(s); k:=0; for i:=1 to Length(s) do if s[i]=c then Inc(k); Writeln('Символ "',c,'" встречается ',k,' раз(а)') end.
Тестовое решение: Введите строку: Learn wisdom by the follies of others Символ "o" встречается 4 раз(а)
количество используемых знаков для шифровки 2 (· и -) с знака можно зашифровать 2 сигнала, а именно: · и - с знаков можно зашифровать 4=2² сигнала, а именно: · ·, · -, - · и - - с знаков можно зашифровать 8=2³ сигнала, а именно: · · ·, · · -, · - ·, - · ·, - - ·, - · -, · - - и - - - с знаков можно зашифровать 16=2^4 сигнала, а именно: · · · ·, · · · -, · · - ·, · · - -, · - · ·, · - · -, · - - ·, · - - -, - · · ·, - · · -, - · - ·, - · - -, - - · ·, - - · -, - - - · и, наконец, - - - -
для нахождения количества символов, закодированных с точки и тире длиной не менее (два и более) двух и не более четырех (четыре и менее) сигналов, необходимо сложить возможные варианты их: 2²+2³+2^4=4+8+16=28
const
c:char='o';
var
s:string;
i,k:integer;
begin
Write('Введите строку: '); Readln(s);
k:=0;
for i:=1 to Length(s) do if s[i]=c then Inc(k);
Writeln('Символ "',c,'" встречается ',k,' раз(а)')
end.
Тестовое решение:
Введите строку: Learn wisdom by the follies of others
Символ "o" встречается 4 раз(а)