Помогите, как преобразовать данный алгоритм с помощью рекурсии ( в pascal abc) Слова в тексте разделены пробелами. Какие символы есть в каждом слове? Решение: function simbols(st:string):set of char; var s:string; n:integer; mc...

Помогите, как преобразовать данный алгоритм с помощью рекурсии ( в pascal abc) Слова в тексте разделены пробелами. Какие символы есть в каждом слове? Решение: function simbols(st:string):set of char; var s:string; n:integer; mc:set of char; begin mc:=[]; n:=pos(' ',st); if n>0 then begin s:=copy(st,1,n-1); Delete(st,1,n); result:=simbols(st); end else s:=st; foreach var c:char in s do mc:=mc+[c]; if result=[] then result:=mc else if mc<>[] then result:=result*mc; end; var s:string; begin readln(s); writeln(simbols(s)); end.
Гость
Ответ(ы) на вопрос:
Гость
function simbols(st:string):set of char; var s:string; n,i:integer; nc:set of char; begin nc:=[]; n:=pos(' ',st); if n>0 then begin s:=copy(st,1,n-1); Delete(st,1,n); end else  begin   s:=st;   st:=''; end;   for i:=1 to length(s) do  nc:=nc+[s[i]]; if length(st)>0 then result:=nc*simbols(st)  else result:=nc; end;
Не нашли ответ?
Ответить на вопрос
Похожие вопросы