Из трех множеств нужно сформировать новое множество с условием - PascalABC.NET

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

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

Добрый вечер. Не могли бы вы помочь с задачей? Даны три множества x1, x2, x3, содержащие целые числа из диапазонов 1..100. Известно, что мощность каждого из этих множеств равна 10. Сформировать новое множество y=(х1*х2)-(х2*х3), из которого выделить подмножество делящихся на 3 без остатка. На экран вывести исходные и полученные множества. Значения элементов исходных множеств ввести с клавы. Все, что я смог набрать сам (наверное, даже самый простой человек смог бы повторить меня):
Листинг программы
  1. var
  2. x1,x2,x3,y,z:set of 1..100;
  3. A,b,c,i: integer;
  4. Begin
  5. X1:=[];
  6. X2:=[];
  7. X3:=[];
  8. Writeln ('a,b,c');
  9. For i:=1 to 10 do
  10. Begin
  11. Readln (a,b,c);
  12. X1:=x1+[a];
  13. X2:=x2+[b];
  14. X3:=x3+[c];
  15. End;
  16. Writeln;
  17. Y:=(x1*x2)-(x2*x1)

Решение задачи: «Из трех множеств нужно сформировать новое множество с условием»

textual
Листинг программы
  1. const
  2.   n=10;
  3. var
  4.   x1,x2,x3,y,z:set of 1..100;
  5.   A,b,c,i: 1..100;
  6. Begin
  7.   X1:=[];
  8.   X2:=[];
  9.   X3:=[];
  10.   y:=[];
  11.   z:=[];
  12.   Writeln ('a,b,c');
  13.   For i:=1 to n do
  14.     Begin
  15.       Readln (a,b,c);
  16.       include(x1,a);
  17.       include(x2,b);
  18.       include(x3,c);
  19.     End;
  20.   Writeln;
  21.   Y:=(x1*x2)-(x2*x1);
  22.   for i:=low(y) to high(y) do
  23.     if (i mod 3 = 0) and (i in y) then
  24.       include(z,i);
  25.   Writeln ('   X1   X2   X3 ');
  26.   For i:=1 to 100 do
  27.     begin
  28.       if i in x1 then
  29.         write(i:5);
  30.       if i in x2 then
  31.         write(i:5);
  32.       if i in x3 then
  33.         writeln(i:5);
  34.     end;
  35.   Writeln ('Y:');
  36.   For i:=1 to 100 do
  37.     if i in Y then
  38.       write(i:5);
  39.   writeln;
  40.   Writeln ('Z:');
  41.   For i:=1 to 100 do
  42.     if i in z then
  43.       write(i:5);
  44.   writeln;
  45.   readln;
  46. end.

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

Список действий в коде:

  1. Объявление переменных:
    • n устанавливается в 10, что указывает на количество наборов данных, которые будут введены.
    • x1, x2, x3, y, z устанавливаются как множества из 1 до 100.
    • A, b, c, i устанавливаются как множества из 1 до 100.
    • X1, X2, X3 устанавливаются как пустые множества.
    • Y устанавливается как (x1x2)-(x2x1).
    • Z устанавливается как пустое множество.
  2. Ввод данных:
    • Пользователю предлагается ввести три числа для каждого набора данных.
    • Используется цикл for для обработки каждого набора данных.
    • Для каждого набора данных считываются три числа.
    • Числа включаются в соответствующие множества (x1, x2, x3).
  3. Обработка данных:
    • Вычисляется Y как (x1x2)-(x2x1).
    • Используется цикл for для обработки каждого элемента в Y.
    • Если остаток от деления элемента на 3 равен 0 и элемент принадлежит множеству y, то элемент включается в z.
  4. Вывод данных:
    • Выводится информация о каждом множестве:
    • Используется цикл for для обработки каждого числа от 1 до 100.
    • Если число принадлежит множеству x1, то оно выводится в формате x1:5.
    • Если число принадлежит множеству x2, то оно выводится в формате x2:5.
    • Если число принадлежит множеству x3, то оно выводится в формате x3:5.
    • Выводится информация о Y:
    • Используется цикл for для обработки каждого числа от 1 до 100.
    • Если число принадлежит множеству Y, то оно выводится в формате Y:5.
    • Выводится информация о Z:
    • Используется цикл for для обработки каждого числа от 1 до 100.
    • Если число принадлежит множеству Z, то оно выводится в формате Z:5.
  5. Ввод данных для завершения работы программы.

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


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

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

12   голосов , оценка 4.25 из 5

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

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

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