(Pascal)Для текста состоящего из слов , разделенных пробелами , выполнить : 1)поиск симметричных слов перевертышей. 2) поиск слов не имеющих повторяющихся букв. Помогите пожалуйста , очень надо ...

(Pascal)Для текста состоящего из слов , разделенных пробелами , выполнить : 1)поиск симметричных слов перевертышей. 2) поиск слов не имеющих повторяющихся букв. Помогите пожалуйста , очень надо ...
Гость
Ответ(ы) на вопрос:
Гость
var  s,s1,s2,st1,st2:string; i:integer;  mn:set of char; b:boolean; begin writeln('Введите текст:'); readln(s); s:=s+' '; st1:=''; st2:=''; s1:=''; s2:=''; mn:=[]; b:=false; while pos('  ',s)>0 do delete(s,pos('  ',s),1); for i:=1 to length(s) do  if s[i]<>' '   then begin         s1:=s[i]+s1;        s2:=s2+s[i];        if s[i] in mn then b:=true;        mn:=mn+[s[i]];        end   else begin        if s1=s2 then st1:=st1+s1+' ';        if not b then st2:=st2+s2+' ';        s1:=''; s2:=''; mn:=[]; b:=false;        end; if st1<>''  then writeln('Слова-перевёртыши: ',st1)  else writeln('Слов-перевёртышей нет'); if st2<>''  then writeln('Слова без повторяющихся букв: ',st2)  else writeln('Слов без повторяющихся букв нет'); end. Пример: Введите текст: заказ слово комок  пробел след пример огонь текст Слова-перевёртыши: заказ комок  Слова без повторяющихся букв: пробел след 
Гость
// PascalABC.NET 3.2, сборка 1370 от 24.12.2016 // Внимание! Если программа не работает, обновите версию! begin   var a:=ReadlnString('>').ToWords;   a.Where(w->w=w.Inverse).Println;   a.Where(w->w.Distinct.Count=w.Length).Println; end. Пример > Наша хата не кабак кто не в хате тот чудак кабак в тот не кто не в хате чудак
Не нашли ответ?
Ответить на вопрос
Похожие вопросы