Предмет: Информатика, автор: elenau7125

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

Входные данные
На вход программе подаются две символьные строки.

Выходные данные
Программа должна вывести в одной строке в алфавитном порядке все латинские буквы, которые не встречаются ни в одной из двух входных строк. Все буквы должны быть заглавными. Если ни одной такой буквы нет, нужно вывести число 0.

Примеры
входные данные
qwertyuiop
asdfghjklzxc
выходные данные
BMNV
Pascal ABC 1.8 с использованием множеств

Ответы

Автор ответа: Merovingian
0
var used: Set of Char;
    s1, s2: string;
    i: integer;
    done: boolean;
    c: char;

function IsLetter(c: char): boolean;
begin
  IsLetter := ((c >= 'a') and (c <= 'z')) or ((c >= 'A') and (c <= 'Z'));
end;

function UpperCase(c: char): char;
begin
  if (c >= 'a') and (c <= 'z') then
    UpperCase := Chr(Ord(c) - Ord('a') + Ord('A'))
  else
    UpperCase := c;
end;

begin
used := [];

readln(s1);
readln(s2);

for i := 1 to length(s1) do
  if (IsLetter(s1[i])) then
    include(used, UpperCase(s1[i]));

for i := 1 to length(s2) do
  if (IsLetter(s2[i])) then
    include(used, UpperCase(s2[i]));

done := False;
for c := 'A' to 'Z' do
  if not (c in used) then
  begin
    done := True;
    write(c);
  end;

if not done then
  write(0);

writeln;
end.
Похожие вопросы
Предмет: Алгебра, автор: sashashevtchuk160307
Предмет: Литература, автор: вадим156
Предмет: Алгебра, автор: tatiana2399