Что тут не правильно??? Смысл задачи простой. Есть строка символов. нужно проверить ее на наличие множества символов и определить есть ли символы не входящие в множество.
function isisonum(a:string):integer;
var
i,e:integer;
begin
e:=0;
for i:=0 to length(a)-1 do
begin
if not (a[i] in ['0'..'9']) then
inc(e);
end;
isisonum:=e;
end;
showmessage(inttostr(isisonum('50043908a8210d0k421')));
неправильно отрабатывается вхождение ' if not (a[i] in ['0'..'9']) then'
Проверка вхождения в строку символов
Модератор: Модераторы
Строка имеет индексы с 1 до Length(s)
Вместо
можно использовать
Код: Выделить всё
if not (a[i] in ['0'..'9']) thenможно использовать
Код: Выделить всё
if Pos(a[i],'0123456789')=0 thenАй, Спасибо!!!!! точно индекс с 1!!!!
Я пол дня мучался не мог понять в чем дело!!!
Про индекс как то даже не подумал!!!
Еще раз спасибо!!!
Я пол дня мучался не мог понять в чем дело!!!
Про индекс как то даже не подумал!!!
Еще раз спасибо!!!
