Очень не корректно поставлен вопрос. Что есть Текст? Это текстовый файл, строка, введенная пользователем, еще что-то? Думайте, прежде чем спросить, и, скорее всего, получите нормальный ответ.
Поэтому, поскольку нет конкретики, будем считать текстом строку, введенную пользователем.
Write('Введите текст : ');
ReadLn(S);
В переменной S теперь находится некоторый текст. Начнем с ним работать. Будем считать словом последовательность символов, ограниченных с обеих сторон пробелами. Сначала сделаем копию введенного текста.
S1 := ' ' + S + ' '; {чтобы не потерять первое и последнее слова}
А дальше,
N := 0; {счетчик слов Мама}
while Pos(' Мама ', S1) > 0 then begin
Delete(S1, Pos(' Мама ', S1)+1, 4);
N := N + 1;
end;
Поскольку может в тексте быть и "мама", то повторим
while Pos(' мама ', S1) > 0 then begin
Delete(S1, Pos(' мама ', S1)+1, 4);
N := N + 1;
end;
Вот и все. Осталось вывести результат.
WriteLn('Во ввденном тексте слово "мама" встречается ', N, ' раз');
Удачи!
PS Можно было бы не делать второй проход, если предварительно преобразовать введенный текст к одному регистру, а затем искать подстроку в этом регисте.
Begin writeln('Введите первое число'); readln(a); writeln('Введите второе число'); readln(b);
if (a<0) and (b<0) then Begin a:=a+2; b:=b+2; writeln('a = ',a); writeln('b = ',b); end else if (a>0) and (b<0) then writeln('a*b = ',a*b) else if (a<0) and (b>0) then writeln('b-a = ', b-a)
ответ:Доброго времени суток.
Очень не корректно поставлен вопрос. Что есть Текст? Это текстовый файл, строка, введенная пользователем, еще что-то? Думайте, прежде чем спросить, и, скорее всего, получите нормальный ответ.
Поэтому, поскольку нет конкретики, будем считать текстом строку, введенную пользователем.
Write('Введите текст : ');
ReadLn(S);
В переменной S теперь находится некоторый текст. Начнем с ним работать. Будем считать словом последовательность символов, ограниченных с обеих сторон пробелами. Сначала сделаем копию введенного текста.
S1 := ' ' + S + ' '; {чтобы не потерять первое и последнее слова}
А дальше,
N := 0; {счетчик слов Мама}
while Pos(' Мама ', S1) > 0 then begin
Delete(S1, Pos(' Мама ', S1)+1, 4);
N := N + 1;
end;
Поскольку может в тексте быть и "мама", то повторим
while Pos(' мама ', S1) > 0 then begin
Delete(S1, Pos(' мама ', S1)+1, 4);
N := N + 1;
end;
Вот и все. Осталось вывести результат.
WriteLn('Во ввденном тексте слово "мама" встречается ', N, ' раз');
Удачи!
PS Можно было бы не делать второй проход, если предварительно преобразовать введенный текст к одному регистру, а затем искать подстроку в этом регисте.
uses crt;
var a,b:real;
Begin
writeln('Введите первое число');
readln(a);
writeln('Введите второе число');
readln(b);
if (a<0) and (b<0)
then
Begin
a:=a+2;
b:=b+2;
writeln('a = ',a);
writeln('b = ',b);
end
else
if (a>0) and (b<0)
then
writeln('a*b = ',a*b)
else
if (a<0) and (b>0)
then
writeln('b-a = ', b-a)
else writeln('Ни одно условие не выполняется');
readln;
end.