Аватар
Информатика, опубликовано 2018-08-22 23:06:33 by Гость

Здравствуйте! Прошу помощи по информатике нужно написать программу. " Пользователь вводит текст. Посчитать количество предложений и слов в этом тексте." program go; var s1:string; a,i,k,b:integer; begin writeln(Введите текст); begin; readln(s1); a:=length(s1); if a>0 then begin b:=1; while a>0 do begin if s1[i]=b then b:=b+1; i:=i-1; end; end else b:=0; writeln(Количество слов в тексте,b); end; begin; readln(s1); a:=length(s1); for i:=1 to a do if s1[i]=. then if s1[i+1]= then k:=k+1; end; writeln(В тексте ,k, предложений..); end.при выполнени и моей выдает ошибку выполнения времени. Индекс находится вне границ массива..

Аватар
Ответ оставил Гость

Var   s: string;
        i,k,c: integer;
begin       
write(Введите текст: );
        readln(s);
        i := length(s);
        k:=0;
        for i:=1 to length(s) do
        if s[i] in [.,?,!] then inc(k);
        if i > 0 then begin
        c := 1;
        while i > 0 do begin
        if s[i] = then
        inc(c);
        dec(i);
        end;
        end
        else
        c := 0;
        writeln(Количество слов в тексте: , c);
        writeln(Количество предложений в тексте: , k);
end.

Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.