Напишите программу, которая вводит две символьные строки и находит все латинские буквы. которых нет ни в одной из них. Заглавные и строчные буквы не различаются. Входные данные На вход программе подаются две символьные строки. ...
Напишите программу, которая вводит две символьные строки и находит все латинские буквы. которых нет ни в одной из них. Заглавные и строчные буквы не различаются.
Входные данные
На вход программе подаются две символьные строки.
Выходные данные
Программа должна вывести в одной строке в алфавитном порядке все латинские буквы, которые не встречаются ни в одной из двух входных строк. Все буквы должны быть заглавными. Если ни одной такой буквы нет, нужно вывести число 0.
Примеры
входные данные
qwertyuiop
asdfghjklzxc
выходные данные
BMNV
Pascal ABC 1.8 с использованием множеств
Ответ(ы) на вопрос:
Гость
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.
Не нашли ответ?
Похожие вопросы