Напишите программу, которая находит все символы, встречающиеся в обеих переданных ей...

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

Напишите программу, которая находит все символы, встречающиеся в обеих переданных ей строках.

Входные данные
На вход программы подаются две символьные строки, каждая строка завершается символом "конец строки".

Выходные данные
Программа должна вывести все символы, которые встречаются в обеих строках, в порядке возрастания их ASCII-кодов. Если таких символов нет, нужно вывести слово 'NO'.

Примеры
входные данные
qwerty
asdqwhy
выходные данные
qwy
входные данные
qwerty
12345
выходные данные
NO
Pascal ABC 1.8 Программа должна быть составлена по теме множества


Информатика (46 баллов) | 105 просмотров
Дан 1 ответ
0 голосов

Var set1: Set of Char;
    set2: Set of Char;
    s1, s2: string;
    i: integer;
    done: boolean;
    c: char;
begin
set1 := [];
set2 := [];
readln(s1);
readln(s2);

for i := 1 to length(s1) do
  include(set1, s1[i]);

for i := 1 to length(s2) do
  include(set2, s2[i]);

done := False;
for c := #0 to #255 do
  if (c in set1) and (c in set2) then
  begin
    done := True;
    write(c);
  end;

if not done then
  write('NO');

writeln;
end.

(1.2k баллов)