Паскаль ABC. Массивом. Даны 2 произвольных множества символов. Из первого выделить...

0 голосов
21 просмотров

Паскаль ABC.
Массивом.
Даны 2 произвольных множества символов.
Из первого выделить русские буквы.
Из второго выделить цифры.
Вывести их множество.


Информатика (25 баллов) | 21 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Поскольку в условии не сказано, включать ли в множество повторяющиеся символы, принято решение для простоты их включать.

const
  nn = 100;{максимальная мощность множества}

var
  m: array[1..nn] of char;
  i, n, n1: integer;
  s1, s2: string;
  alpha, digit: set of char;

begin
  alpha := ['А'..'я'];
  digit := ['0'..'9'];
  n := 0;
  Writeln('Введите строку символов первого множества');
  Readln(s1);
  Writeln('Введите строку символов второго множества');
  Readln(s2);
  for i := 1 to Length(s1) do
    if (s1[i] in alpha) then begin n := n + 1; m[n] := s1[i] end;
  for i := 1 to Length(s2) do
    if (s2[i] in digit) then begin n := n + 1; m[n] := s2[i] end;
  Writeln('Результирующее множество');
  for i := 1 to n do Write(m[i]:2)
end.

Тестовое решение:
Введите строку символов первого множества
-This 1*2 П*ро=изvolnый наbop сим;волob**
Введите строку символов второго множества
Отсюда 1-(4)=5 только цифры 33.634 berem
Результирующее множество
 П р о и з ы й н а с и м в о л 1 4 5 3 3 6 3 4




(142k баллов)