Поделитесь своими знаниями, ответьте на вопрос:
В алфавите языке племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно вывести на экран все возможные слова, состоящие из K букв, в которых есть по крайней мере две одинаковые буквы, стоящие рядом
const
K = 5; // можно сделать переменной и запрашивать у пользователя
alpha : array[1 .. 4] of char = ('Ы', 'Ш', 'Ч', 'О');
var count : integer := 0;
procedure p(s : string);
begin
if s.Length = K then
begin
writeln(s);
inc(count);
end
else
begin
var L := s.Length;
if (s.Length < 2) or (s[2] = 'Ы') then
foreach var ch : char in alpha do p(s + ch);
end;
end;
begin
p('');
writeln('count = ', count);
end.