Имеется текст(любой) Определить сколько слов в тексте начинаются со слога "со" Помогите...

0 голосов
25 просмотров

Имеется текст(любой)
Определить сколько слов в тексте начинаются со слога "со"
Помогите пожалуйста,очень нужно решение,так как завтра контрольная и хочется её хорошо написать)Заранее спасибо)
Задачу нужно решить в Паскале)


Информатика (186 баллов) | 25 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Вот так эту задачу можно решить на современном Паскале. Но, к сожалению, так в школах не учат, заставляя тратить время и силы на громоздкие программы, в которых легко ошибиться.

// PascalABC.Net 3.2

begin
  Write(ReadlnString('->').ToWords.Where(x->x.Left(2)='со').Count)
end.

Пример:
-> Три собаки сосали одну косточку
2

А вот так (примерно, потому что обычно еще хуже) учат писать программы в школе...

var
  s:string;
  i,n,k,p:integer;
begin
  Write('->'); Readln(s);
  if Copy(s,1,2)='со' then k:=1 else k:=0;
  Delete(s,1,3);
  repeat
    i:=Pos(' со',s);
    if i>0 then begin
      Inc(k);
      Delete(s,1,i+3)
      end
  until i=0;
  Writeln(k)
end.

(150k баллов)
0

Спасибо,к сожалению я сейчас в школе и именно так меня и учат)

0

А скажите как бы вы решили такую задачу)В любом тексте подсчитать количество слов,я решила так

0

program z_3;
var st:string;i,n:integer;
begin
writeln('Vvedite stroku');read(st);
st:=st+' ';
n:=0;
for i:=1 to length(st) do
if(st[i]<>' ')and(st[i+1]=' ')then n:=n+1;
writeln('V stroke ',n,' slov');
end.

0

Это правильно?)