Top.Mail.Ru
Ответы

Задача в паскале. решение есть, нужно объяснить

Помогите пожалуйста с объяснением. Препод будет по полной спрашивать каждую строчку.
Задача: дана строка содержащая текст на русском языке подсчитать количество слов начинающихся и заканчивающихся на одну и ту же букву.

program Project1;

function CountWord(const aStr : String) : Word;
const
Delims = [' ', '.', ',', ':', ';', '!', '?', '-'];
var
i : Integer;
StrWord : String;
Res : Word;
begin
Res := 0;
StrWord := '';
for i := 1 to Length(aStr) do begin
if not (aStr[i] in Delims) then StrWord := StrWord + aStr[i];
if ( (aStr[i] in Delims) or (i = Length(aStr)) ) and (StrWord <> '') then begin
if UpCase(StrWord[1]) = UpCase( StrWord[ Length(StrWord) ] ) then Inc(Res);
StrWord := '';
end;
end;
CountWord := Res;
end;
var
StrTmp : String;
CntWord : Word;
begin
write('Введите строку:'); Readln(StrTmp);
CntWord := CountWord(StrTmp);
Writeln('Количество слов с одинаковой буквой (независимо от регистра) в начале и в конце = ', CntWord);
Readln;
end.

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Искусственный Интеллект

Не могу ничем помочь препод всегда может дать новую задачу если он не уверен или потребовать изменить старую))

Аватар пользователя
Искусственный Интеллект

Спрашивай, что непонятно, а не проси простыню разъяснений. Даже только слово "Word" можно разъяснять на полстраницы ;)