Ввести текст и подсчитать количество различных букв в каждом слове - 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.

Объяснение кода листинга программы

  1. Ввод текста: программа запрашивает у пользователя ввод текста.
  2. Разбиение строки на слова: программа разбивает введенную строку на слова, используя пробелы как разделители.
  3. Создание пустой строки и множества: программа создает пустую строку s1 и множество m.
  4. Перебор символов в слове: программа перебирает каждый символ в текущем слове.
  5. Добавление символа в строку и множество: если текущий символ не является разделителем и не был добавлен ранее, то он добавляется в строку s1 и множество m.
  6. Подсчет количества различных букв: программа подсчитывает количество уникальных символов в множестве m.
  7. Вывод результата: программа выводит количество различных букв в слове, разделенных пробелами и сопровождаемых строкой, введенной пользователем.
  8. Дополнительные действия: программа может пропускать слова или символы, которые являются разделителями.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.133 из 5
Похожие ответы