DigitL: Set of AnsiChar=['а','е','ё','и','о','у','ы','э','ю','я'];
DigitU: Set of AnsiChar=['А','Е','Ё','И','О','У','Ы','Э','Ю','Я'];
procedure TForm1.Button1Click(Sender: TObject);
var
i,kolvo:integer;
begin
kolvo:=0;
for i:=1 to Length(Edit1.Text) do
if (CharInSet((Edit1.Text), DigitL)) or (CharInSet((Edit1.Text), DigitU)) then
begin
kolvo:=kolvo+1;//inc(kolvo);
end;
Label1.Caption:=IntToStr(kolvo);
end;
Кирилица в паскале
Код:
в поле эдит вводится произвольная строка символов
Как видно из кода программа должна посчитать количество гласных букв в строке.
Но с русскими хоть у бей не считает...
DigitL, DigitU - set of AnsiChar
вот и все проблемы.
каким кол-вом элементов у нас множества-то ограничены?