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

Вниз

примитив про цикл   Найти похожие ветки 

 
заза   (2008-02-03 15:57) [0]

for i := Low(RecArr) to High(RecArr) do
 with RecArr[i] do
   if (Edit1.Text <> RecData1) and (Edit1.Text <> RecData2) then
   begin
     //ok , test
     Halt;
   end else
   begin
     ShowMessage("Имена совпадают, что-то не так")
     Break;
   end;


RecArr - это массив состоящий из record"ов.

Я не пойму, почему Break не работает так как мне хочется. Если срабатывает else, после Break цикл крутится до следующего элемента и на нем уже срабатывает if. Т.е. Break не помогает.


 
Johnmen ©   (2008-02-03 16:00) [1]

А как ты проверил, что крутится?


 
Сергей М. ©   (2008-02-03 16:02) [2]


> после Break цикл крутится до следующего элемента


На основании чего ты утверждаешь это ?


 
Thrasher ©   (2008-02-05 14:26) [3]

Сделай условие по-другому:

for i := Low(RecArr) to High(RecArr) do
with RecArr[i] do
  if (Edit1.Text = RecData1) and (Edit1.Text = RecData2) then
  begin
    ShowMessage("Имена совпадают, что-то не так")
    Break;
  end
    else
 begin
    //ok , test
    Halt;
 end;

Странная вещь в этом коде - если имена совпадают, то Break, если не совпадают, то Halt. Автор разберись в коде!

Вообще такие конструкции надо стараться избегать. Дело в том, что при компилировании в машинный код, компилятор данную конструкцию компилирует БЕЗ сохранения флагов проверки.


 
Johnmen ©   (2008-02-05 14:39) [4]


> Thrasher ©   (05.02.08 14:26) [3]
> Сделай условие по-другому:

Логика "другого условия" не соответствует логике автора.
Учите азы булевой алгебры. А уж потом советуйте...


 
ketmar ©   (2008-02-05 15:34) [5]

>[3] Thrasher ©(05.02.08 14:26)
>Дело в том, что при компилировании в машинный код, компилятор данную
>конструкцию компилирует БЕЗ сохранения флагов проверки.

можно это перевести на понятный русский?



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
15-1201268736
sauron
2008-01-25 16:45
2008.03.02
Наконец-то....


15-1201354775
{RASkov}
2008-01-26 16:39
2008.03.02
Отличия циклов


15-1201348962
DillerXX
2008-01-26 15:02
2008.03.02
поможите с SQL запросом (сервер MySQL)


3-1192518920
Александр
2007-10-16 11:15
2008.03.02
Представление информации из баз данных в виде дерева


15-1201334473
del
2008-01-26 11:01
2008.03.02
Санер радиочастот