Используя контейнеры и алгоритмы стандартной библиотеки шаблонов, решить
следующие задачи (использовать только алгоритмы стандартной библиотеки шаблонов):
Дан текст, состоящий из предложений, разделённых знаками препинания из набора «.?!». Предложения в свою очередь состоят из слов, отделенных друг от друга пробелами. Найти слова (без учёта регистра) и их количество, которые встречаются одновременно и в повествовательных, и в восклицательных предложениях.
Текст вводится с клавиатуры!
На C++.
p=(a+b+c)/2
Программа:
program z;
var a1,b1,c1,a2,b2,c2,p1,p2,s1,s2:real;
begin
readln(a1,b1,c1); {ввод длин сторон первого треугольника}
p1:=(a1+b1+c1)/2; {полупериметр первого треугольника}
s1:=sqrt(p1*(p1-a1)*(p1-b1)*(p1-c1)); {площадь первого треугольника}
readln(a2,b2,c2); {ввод длин сторон второго треугольника}
p2:=(a2+b2+c2)/2; {полупериметр второго треугольника}
s2:=sqrt(p2*(p2-a2)*(p2-b2)*(p2-c2)); {площадь второго треугольника}
if s1=s2 {если площади треугольников равны}
then writeln('Yes') {то вывести положительный ответ}
else writeln('No'); {иначе вывести отрицательный ответ}
end.
var
s,w:string;
begin
Write('Введите предложение: '); Readln(s);
Write('Введите искомое слово: '); Readln(w);
s:=' '+s+' ';
if Pos(' '+w+' ',s)>0 then Writeln('Слово входит в предложение')
else Writeln('Слово не входит в предложение')
end.
Тестовые решения:
Введите предложение: А роза упала на лапу Азора
Введите искомое слово: роза
Слово входит в предложение
Введите предложение: Вчера смотрели старую кинопанораму
Введите искомое слово: кино
Слово не входит в предложение
Введите предложение: Интересное было кино или так себе?
Введите искомое слово: кино
Слово входит в предложение
Замечание: В программе было обращено внимание на то, что "слово" не может быть частью другого слова, а должно являться самостоятельным членом предложения. В противном случае принято говорить не о слове, а о контексте (подстроке)