Вывести все согласные, которых нет ни в одном слове предложения - Free Pascal
Формулировка задачи:
Помогите пожалуйста а то у меня не получается.
Задание: Дано предложение. Вывести все согласные, которых нет ни в одном слове.
Вот есть подобная задача, как же мне сделать так чтоб она производила такие действия, но со строкой введённой с клавиатуры?
uses crt; //множество всех согласных букв русского алфавита const sgl=['Б','б','В','в','Г','г','Д','д','Ж','ж','З','з','Й','й','К','к', 'Л','л','М','м','П','п','Р','р','С','с','Т','т','Ф','ф','Х','х', 'Ц','ц','Ч','ч','Ш','ш','Щ','щ']; var f:text; c:char; m:set of char; begin assign(f,'text.txt'); reset(f); m:=[];//множество согласных, которые ксть в файле while not eof(f) do read(f,c); if c in sgl then m:=m+[c]; close(f); writeln('Согласные буквы, которых нет ни в одном слове:'); m:=sgl-m;//вычитаем из полного множества, те что есть if m=[] then write('Таких букв нет') else begin for c:='Б' to 'щ' do if c in m then write(c); end; end.
Решение задачи: «Вывести все согласные, которых нет ни в одном слове предложения»
textual
Листинг программы
ReadLn(s); for i:=1 to Length(s) do Include(m,s[i]); m:=sgl-m; for c:='А' to 'я' do if с in m then Write(c); WriteLn;
Объяснение кода листинга программы
- Вводится предложение в переменную
s
с помощью функции ReadLn. - В цикле перебираются все символы в предложении
s
. - С помощью функции Include проверяется, является ли текущий символ согласным и добавляется в переменную
m
, если да. - Переменная
m
содержит все согласные символы в предложенииs
. - Переменная
sgl
содержит количество символов в предложенииs
. - Переменная
m
содержит только согласные символы, которых нет в предложенииs
. - В цикле перебираются все буквы от 'А' до 'я'.
- Если текущая буква есть в переменной
m
, то она выводится на экран с помощью функции Write. - Код выводит все отсутствующие согласные буквы в предложении
s
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д