Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.19;
Скачать: CL | DM;

Вниз

Case ???   Найти похожие ветки 

 
Koala ©   (2004-09-04 21:32) [0]

Почему так получается
   REAL_NUM  : integer;
   ENT_NUM   : integer;
   END_NUM   : integer;

     case REAL_NUM of
      ENT_NUM..END_NUM: - ругается

      else
       begin

       end;
      end;

     case REAL_NUM of
      0..15: - нормально проходит
     else
       begin

       end;
      end;


 
Семен Сорокин ©   (2004-09-04 21:42) [1]

потому как там должна стоять константа, или выражение которое компилятор может вычислить на этапе компиляции.
ЗЫ. В хелпе по case это черным по белому написано.


 
Koala ©   (2004-09-04 22:04) [2]


> Семен Сорокин ©   (04.09.04 21:42)

Тогда как его обойти???


 
Mihey_temporary ©   (2004-09-04 22:10) [3]


If (REAL_NUM >= ENT_NUM) and (REAL_Num <= END_NUM) then
 begin
 end;


 
Koala ©   (2004-09-04 22:19) [4]


> [3] Mihey_temporary ©   (04.09.04 22:10)

спасибо

тогда получается
if REAL_NUM in [ENT_NUM..END_NUM] then   - не ругается но и не работает

почему???


 
Mihey_temporary ©   (2004-09-04 23:00) [5]


> тогда получается
> if REAL_NUM in [ENT_NUM..END_NUM] then   - не ругается но
> и не работает
>
> почему???


Ошибка в значениях, наверное. Вот такой код у меня сработал на ура (сообщение появилось):


var Cu1: Integer;
   Lo1: Integer;
   Hi1: Integer;
begin
 Cu1 := 50;
 Lo1 := 1;
 Hi1 := 100;
 If Cu1 in [Lo1..Hi1] then
  ShowMessage("!!!!");


 
Mihey_temporary ©   (2004-09-04 23:10) [6]

2 Koala:

Хочу добавить, что если твоя задача может быть решена способом Mihey_temporary © (04.09.04 22:10) [3], то лучше им и воспользоваться, так как он на порядок быстрее в плане выполнения (проверял сейчас только). Это справледливо, если элементов множества больше 32.


 
Koala ©   (2004-09-04 23:17) [7]

Спасибо всем!!!



Страницы: 1 вся ветка

Текущий архив: 2004.09.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
3-1092917512
andrey__
2004-08-19 16:11
2004.09.19
insert в св.SQL TADOQuery не вставляет время


14-1093947617
Delirium
2004-08-31 14:20
2004.09.19
Теперь, посылая кого-нибудь, вы точно знаете куда он пойдёт :)


4-1091641006
Кулибяка
2004-08-04 21:36
2004.09.19
Перехват сообщения


14-1093937586
Chainik
2004-08-31 11:33
2004.09.19
Скачивание обновлений Win2K


4-1088471570
mvgfirst
2004-06-29 05:12
2004.09.19
Отправка SMS через мобилу + COM-порт. Не могу послать AT команду.