Главная страница
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.065 c
8-1088501259
GooFfy
2004-06-29 13:27
2004.09.19
TImage


8-1088625804
parovoZZ
2004-07-01 00:03
2004.09.19
DirectX9.0


14-1093721612
Piter
2004-08-28 23:33
2004.09.19
Кто хочет попробовать C#


14-1093701485
Князь Мышкин
2004-08-28 17:58
2004.09.19
Как вы считаете, были ли американцы?


1-1093964958
Lord de Mon
2004-08-31 19:09
2004.09.19
Типы