Аватар
Информатика, опубликовано 2018-08-22 22:43:12 by Гость

Помогите, как преобразовать данный алгоритм с помощью рекурсии ( в 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;

Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.