Операции с (над) множествами символьного типа, получение множества по заданному условию - PascalABC.NET
Формулировка задачи:
Вложение 667205
Задано пять множеств А, В, С, D, E символьного типа. Получить множество Х, которая вычисляется по "формуле 1", если выполняется указанное "Условие", или по "формуле 2", если условие не выполняется. Варианты "условия", "формула 1", "формула 2" и тип множеств указанные в таблице 1. В таблице используются следующие сокращения:
обозначения:
АВ - А есть подмножество В ("in", "<=" - содержится в)
АВ - А не является подмножеством В
АВ - А включает в себя В ("> =" - содержит)
А В - А не содержит в себе В
А = В - множества А и В равны
АВ - множества А и В не равны
АВ - объединение множеств А и В
АВ - пересечение множеств А и В
А \ В - разность множеств А и В
А--В - симметрическая разность А и В
- конъюнкция (логическая операция "и")
V- дизъюнкция (логическая операция "или")
1). Умова ((АВ)С) V (D=E)
2). Формула 1 A\BCDE
3). Формула 2 ABC--D--E
4). Тип символьний
Запись в Pascal
1). ((А+В)<= С) or (D=E) 2). A-B+C+D+E 3). A+B+((C+D+E)-(C*D*E)) 4). char
Эту задачу я сделал, но как тип множества численный или отрезок, а нужно как символьный - "char". Есть идеи, как это реализовать? Чтоб выводились всякие символы в множествах РАНДОМНО (буквы например или по таблице символов 866 (ASCII, OEM, DOS)) или брались из файла. Ну и так далее, выполнялись условие (формулы). Помогите пожалуйста поправить код.
Решение задачи: «Операции с (над) множествами символьного типа, получение множества по заданному условию»
textual
Листинг программы
begin var A, B, C : Set of Char; Randomize; // Случайными символами A := []; for var i := 1 to Random(10, 20) do A += [Chr(Random(Ord('A'), Ord('Z')))]; B := []; for var i := 1 to Random(10, 20) do B += [Chr(Random(Ord('A'), Ord('Z')))]; // Диапазоном символов C := [ Chr(Random(Ord('A'), Ord('E'))) .. Chr(Random(Ord('G'), Ord('L'))) ]; WriteLn('A = ', A); WriteLn('B = ', B); WriteLn('C = ', C); WriteLn('A U B = ', A + B); WriteLn('A n B = ', A * B); end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д