Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Case ??? [D6]


Koala ©   (2004-09-04 21:32:00) 

Почему так получается
   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;


Koala   (2004-09-04 23:17:00) [1]

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


Mihey_temporary   (2004-09-04 23:10:00) [2]

2 Koala:

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


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


> тогда получается
> 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('!!!!');


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


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

спасибо

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

почему???


Mihey_temporary   (2004-09-04 22:10:00) [5]


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


Koala   (2004-09-04 22:04:00) [6]


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

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


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

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо