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

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

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

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

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

textual
Листинг программы
type
    TSetChar = Set Of Char;
procedure PrintSet(const st: TSetChar);
var
    c: Char;
begin
    for c := #65 to #90 do
    begin
        if (c in st)
        then
            Write(c:2);
        if (Chr(Ord(c) + 32) in st)
        then
            Write(Chr(Ord(c) + 32):2);
    end;
    WriteLn;
end;
var
    str: String;
    s1, s2: TSetChar;
    i: Word;
begin
    s1 := []; s2 := [];
    Write('Input s: '); ReadLn(str);
    for i := 1 to Length(str) do
        if (Odd(i))
        then
            Include(s1, str[i])
        else
            Include(s2, str[i]);
    Write('S1: '); PrintSet(s1);
    Write('S2: '); PrintSet(s2);
    Write('Объединение: '); PrintSet(s1 + s2);
    Write('Разность s1 - s2: '); PrintSet(s1 - s2);
    Write('Разность s2 - s1: '); PrintSet(s2 - s1);
    Write('Пересечение: '); PrintSet(s1 * s2);  
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
Похожие ответы