Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 11.05.2013, 12:55   #1
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию Operator not applicable to this operand type

никак не допру с чего ошибка

Код:
Const Str: array [0..3] of Char = ('0','1','2','3');
Var S: String = '01e2';
      i: Integer;
begin
for i:= 0 to Length(S)-1 do
if not (s[i] in Str) then Exit; //Error
end;
NewLamer&Programer вне форума
Старый 11.05.2013, 13:00   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Наверно это потому что строка внезапно не множество, а массив. Предлагаю исправить:
Код:
Const Str: array [0..3] of Char = ('0','1','2','3');
на
Код:
Str:='0123';
и
Код:
if not (s[i] in Str) then Exit;
исправить на
Код:
if pos(s[i], Str)>0 then Exit;
Либо уже объявить нормальное множество. Ну и в общем-то приведенный алгоритм просто ничего путного не сделает, если конечно за end нет больше строк....
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 11.05.2013 в 13:03.
Utkin вне форума
Старый 11.05.2013, 13:05   #3
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

Utkin, нет нет нет, у меня там именно массив нужен
NewLamer&Programer вне форума
Старый 11.05.2013, 13:11   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Но тогда спрашивается какого Вы применяете in к массиву? Эта операция проверки вхождения элемента в множество. Да и любая строка это именно массив char, при условии что она не юникодовая.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума
Старый 11.05.2013, 13:13   #5
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

Utkin, правда? не знал как же мне тогда произвести эту операцию -_-

п.с. если только Set of Char... сейчас попробую
NewLamer&Programer вне форума
Старый 11.05.2013, 13:27   #6
NewLamer&Programer
Форумчанин
 
Регистрация: 23.11.2012
Сообщений: 428
По умолчанию

да Set of char прокатило
NewLamer&Programer вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Pascal Error] uEditKorm.pas(56): E2015 Operator not applicable to this operand type Makaralex Помощь студентам 4 16.09.2012 09:16
Operator not applicable to this operand type Makaralex Помощь студентам 2 07.09.2012 11:52
Operator not applicable to this operand type welcomeTo Помощь студентам 9 06.06.2011 21:01
Ошибка. Operator not applicable to this oparand type _-Re@l-_ Общие вопросы Delphi 6 29.06.2010 13:30
ошибка - [Error] Unit1.pas(325): Operator not applicable to this operand type blackstersl Общие вопросы Delphi 6 27.08.2008 13:17