Напечатать гласные буквы, входящие в каждое слово, и согласные буквы, не входящие ни в одно слово - Pascal

Узнай цену своей работы

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

Дана непустая последовательность слов из строчных русских букв; между соседними словами - запятая, за последним словом - точка. Напечатать в алфавитном порядке все гласные буквы, которые входят в каждое слово; все согласные буквы, которые не входят ни в одно слово. Помогите с программой, пожалуйста.

Решение задачи: «Напечатать гласные буквы, входящие в каждое слово, и согласные буквы, не входящие ни в одно слово»

textual
Листинг программы
  1. var s: string;
  2.     glasn, soglasn, w: set of char;
  3.     i: integer;
  4.     c: char;
  5. begin
  6.   writeln('Введите последовательность русских слов через запятую с точкой в конце:');
  7.   readln(s);
  8.   glasn := ['а','е','ё','и','о','у','ы','э','ю','я'];
  9.   soglasn := ['б','в','г','д','ж','з','й','к','л','м','н','п','р','с','т','ф','х','ц','ч','ш','щ'];
  10.   w := [];
  11.   for i := 1 to length(s) do
  12.     if s[i] in ['.', ',']
  13.       then begin
  14.         glasn := glasn * w;
  15.         soglasn := soglasn - w;
  16.         w := []
  17.       end
  18.       else include(w, s[i]); //процедура include - это то же самое, что и w := w + [s[i]], но быстрее
  19.   writeln('Гласные буквы, входящие в каждое слово:');
  20.   if glasn = []
  21.     then writeln('Не найдены.')
  22.     else begin
  23.       for c := ' ' to high(char) do if c in glasn then write(c);
  24.       writeln
  25.     end;
  26.   writeln('Согласные буквы, которые не входят ни в одно слово:');
  27.   if soglasn = []
  28.     then writeln('Не найдены.')
  29.     else begin
  30.       for c := ' ' to high(char) do if c in soglasn then write(c);
  31.       writeln
  32.     end;
  33.   readln
  34. end.

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

  1. Объявляется переменная s типа string для хранения ввода пользователя
  2. Создаются множества символов glasn и soglasn для хранения гласных и согласных букв соответственно
  3. Объявляется переменная w для временного хранения букв в каждом слове
  4. Выводится приглашение на ввод последовательности русских слов
  5. Пользователь вводит последовательность слов через запятую, которая сохраняется в переменную s
  6. Инициализируются множества glasn и soglasn соответствующими русскими гласными и согласными буквами
  7. Выполняется цикл для обработки каждого символа в строке s
  8. Если текущий символ - точка или запятая, то обновляются множества glasn и soglasn путем пересечения и разности с множеством w, и переменная w обнуляется
  9. Печатаются гласные буквы, входящие в каждое слово, либо сообщение Не найдены.
  10. Печатаются согласные буквы, которые не входят ни в одно слово, либо сообщение Не найдены.
  11. Завершение программы.

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


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

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

9   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы