Напишите программу, которая вводит две символьные строки и находит все латинские буквы. которых нет ни в одной из них. заглавные и строчные буквы не различаются. входные данные на вход программе две символьные строки. выходные данные программа должна вывести в одной строке в алфавитном порядке все латинские буквы, которые не встречаются ни в одной из двух входных строк. все буквы должны быть заглавными. если ни одной такой буквы нет, нужно вывести число 0. примеры входные данные qwertyuiop asdfghjklzxc выходные данные bmnv pascal abc 1.8 с использованием множеств

вованоджи вованоджи    1   23.08.2019 14:50    19

Ответы
sholdakirnichnp0175q sholdakirnichnp0175q  05.10.2020 14:47
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.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика