Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.04.2017, 18:06   #1
Reatar
 
Регистрация: 14.12.2016
Сообщений: 9
По умолчанию Объединение двух целочисленных множеств A и И - Pascal ABC

Помогите разобраться с объединением множеств.
Код:
type
  mnoj = object
    a: array of string;
    function Ob(m2: mnoj): mnoj;
    procedure Add(x: string);
    function Check(x: string): boolean;
    procedure Print;
  end;
function summa(a: integer): integer;
begin
  if (a = 0) then
    summa := 0
  else
    summa := a mod 10 + summa(a div 10);
end;
function mnoj.Ob(m2: mnoj): mnoj;
var
  i,n: integer;
begin
  for I := 0 to (length(a)-1) do
    ob.Add(a[i]+a[i]);
end;
 
procedure mnoj.Add(x: string);
begin
  if Check(x) then
    exit;
 
  if (length(x) < 1) then
 
  begin
    Writeln('Введенные данные не соответствуют заданию!');
    exit;
  end;
 
  SetLength(a, length(a) + 1);
  a[length(a) - 1] := x;
end;
 
function mnoj.Check(x: string): boolean;
var
  i: integer;
begin
  for i := 0 to length(a) - 1 do
    if a[i] = x then
    begin
      Check := true;
      exit;
    end;
 
  Check := false;
end;
 
procedure mnoj.Print;
var
  i: integer;
begin
  for i := 0 to length(a) - 1 do
    Write(a[i] + ', ');
  Writeln;
  Writeln;
end;
 
var
  a, b, c: mnoj;
  x, i: integer;
  z: string;
 
begin
  while true do
  begin
    Writeln(' 1. Введите А             ');
    Writeln(' 2. Введите В             ');
    Writeln(' 3. Объединение                   ');
    Writeln(' 4. Проверить элемент в А ');
    Writeln(' 5. Проверить элемент в B ');
    Writeln(' 6. Вывести всё           ');
    write(': ');
    readln(x);
    Writeln;
 
    case x of
      1:
        begin
          write('Введите число: ');
          readln(z);
          if (StrToInt(z) > 0) and (summa(StrToInt(z)) mod 2 = 0) then
          begin
          a.Add(z);
          write('A: ');
          a.Print;
          end
          else writeln('Please repeat');
        end;
      2:
        begin
          write('Введите число: ');
          readln(z);
          if (StrToInt(z) > 0) and (summa(StrToInt(z)) mod 2 = 0) then
          begin
          b.Add(z);
          write('B: ');
          b.Print;
          end
          else writeln('Please repeat');
        end;
      3:
        begin
          c := a.ob(b);
          Write('Объединение: ');
          c.Print
        end;
      4:
        begin
          write('Введите число: ');
          readln(z);
          if a.Check(z) then
            Writeln('Такой элемент есть в А!')
          else
            Writeln('Такого элемента нет в А!');
          Writeln;
        end;
      5:
        begin
          write('Введите число: ');
          readln(z);
          if b.Check(z) then
            Writeln('Такой элемент есть в В!')
          else
            Writeln('Такого элемента нет в В!');
          Writeln;
        end;
      6:
        begin
          write('A: ');
          a.Print;
          write('B: ');
          b.Print;
          write('C: ');
          c.Print;
        end;
    else
      exit;
    end;
  end;
end.
Reatar вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объединение двух векторов в матрицу, состоящую из двух столбцов[matlab] fygas1991 Помощь студентам 0 22.01.2015 00:09
На пересечении двух множеств... Artsiom Помощь студентам 1 13.12.2013 23:52
Для каждой из двух целочисленных матриц вывести на печать элементы, кратные трем (Pascal) pitak Помощь студентам 10 11.12.2013 23:20
объединение, пересечение,разность множеств. Pascal ABC программирование Помощь студентам 0 10.06.2013 21:26
подпрограмма сложения двух матриц Pascal ABC программирование Помощь студентам 2 04.06.2013 14:07