Ввести текст и подсчитать количество различных букв в каждом слове - Turbo Pascal

Формулировка задачи:

Доброго времени суток, форумчане. Прошу помощи: Ввести текст и подсчитать количество различных букв в каждом слове. К словам, где буквы не повторяются, добавить в начало слова последнюю букву этого слова. даже и не знаю с чего начать отталкиваться, был бы признателен за хороший, годный пример одного из вариантов решения данной задачи

Код к задаче: «Ввести текст и подсчитать количество различных букв в каждом слове - Turbo Pascal»

textual
uses crt;
const rz=[' ','.',',','-','?','!'];{симdолы, разделители слов, можно добавить}
var s,s1:string;
    m:set of char;{множество для определения числа различных букв}
    n,i,j,k:byte;
begin
clrscr;
writeln('Введите текст:');
readln(s);
i:=1;
while i<=length(s) do
if not(s[i] in rz)and ((s[i-1] in rz)or(i=1)) then{если не разделитель
                         и первый или перед ним разделитель, то начало слова*}
 begin
  k:=i;
  s1:='';
  while not(s[k] in rz)and(k<=length(s))do {пока не разделитель и не конец строки}
   begin
    s1:=s1+s[k];{составляем слово}
    k:=k+1;
   end;
  m:=[];
  k:=0;
  for j:=1 to length(s1) do
  if not(s1[j] in m) then
   begin
    k:=k+1;
    m:=m+[s1[j]];
   end;
  writeln(s1,' ',k,' различных букв');
  if k=length(s1) then
   begin
    insert(s1[length(s1)],s,i);
    i:=i+length(s1)+1
   end
  else i:=i+length(s1);{перешагиваем через слово}
 end
else i:=i+1;{пропускаем разделители}
write(s);
readln
end.

15   голосов, оценка 4.133 из 5


СОХРАНИТЬ ССЫЛКУ