Сформировать из последовательности букв два множества - Pascal

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

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

Ввести последовательность букв латинского алфавита. Каждую вторую букву записать множеству S1, другие - к множеству S2. Найти объединение, пересечение и разность полученных множеств.

Решение задачи: «Сформировать из последовательности букв два множества»

textual
Листинг программы
  1. type
  2.     TSetChar = Set Of Char;
  3. procedure PrintSet(const st: TSetChar);
  4. var
  5.     c: Char;
  6. begin
  7.     for c := #65 to #90 do
  8.     begin
  9.         if (c in st)
  10.         then
  11.             Write(c:2);
  12.         if (Chr(Ord(c) + 32) in st)
  13.         then
  14.             Write(Chr(Ord(c) + 32):2);
  15.     end;
  16.     WriteLn;
  17. end;
  18. var
  19.     str: String;
  20.     s1, s2: TSetChar;
  21.     i: Word;
  22. begin
  23.     s1 := []; s2 := [];
  24.     Write('Input s: '); ReadLn(str);
  25.     for i := 1 to Length(str) do
  26.         if (Odd(i))
  27.         then
  28.             Include(s1, str[i])
  29.         else
  30.             Include(s2, str[i]);
  31.     Write('S1: '); PrintSet(s1);
  32.     Write('S2: '); PrintSet(s2);
  33.     Write('Объединение: '); PrintSet(s1 + s2);
  34.     Write('Разность s1 - s2: '); PrintSet(s1 - s2);
  35.     Write('Разность s2 - s1: '); PrintSet(s2 - s1);
  36.     Write('Пересечение: '); PrintSet(s1 * s2); 
  37. end.

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

  1. Определение пользовательского типа данных TSetChar для представления множества символов.
  2. Создание процедуры PrintSet для вывода множества символов.
  3. Определение переменных:
    • str типа String для хранения входной строки,
    • s1 и s2 типа TSetChar для создания двух множеств символов,
    • i типа Word для использования в цикле.
  4. Инициализация переменных s1 и s2 пустыми множествами.
  5. Ввод строки с клавиатуры и сохранение ее в переменную str.
  6. Проход по символам строки str с помощью цикла, добавление символов с нечетным индексом в s1, а с четным - в s2.
  7. Вывод множества s1 с помощью процедуры PrintSet.
  8. Вывод множества s2 с помощью процедуры PrintSet.
  9. Вывод объединения множеств s1 и s2 с помощью процедуры PrintSet.
  10. Вывод разности множеств s1 - s2 с помощью процедуры PrintSet.
  11. Вывод разности множеств s2 - s1 с помощью процедуры PrintSet.
  12. Вывод пересечения множеств s1 * s2 с помощью процедуры PrintSet.

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


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

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

13   голосов , оценка 4.077 из 5

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

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

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