var S : string; {строка текста}
N : byte; {количество замен символов}
Если флажок CheckBox1 установлен, то свойство CheckBox1.Checked приобретает значение True.
С учетом вышесказанного тело процедуры может быть записано следующим образом:
N:=0; {обнулить число букв а}
Edit3.Text:=' '; Edit2.Text:=' '; S:=Edit1.Text; {присвоить S значение текстовой строки}
if CheckBox2.Checked then {если включен флажок CheckBox2}
whilePos('a', S) > 0 do {если в строке найдена буква а}
begin N:=N+1; {увеличить счетчик замен на 1}
S[Pos('a', S)]:='б'; {заменить букву а буквой б}
end; if CheckBox3.Checked then while Pos(' ', S) > 0 do {если в строке найден пробел}
begin N:=N+1; {увеличить счетчик замен на 1}
S[Pos(' ', S)]:='-'; {заменить пробел символом -}
end; if CheckBox1.Checked then Edit3.Text:=IntToStr(N); {вывод числа замен символов}
Edit2.Text:=S; {вывод измененного текста}
end;