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

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

люди, как выйти из цикла? [D6]


tester1 ©   (2002-12-24 11:09:00) 

допустим у меня есть цикл. Как только сработало какое-то условие, в котором стоит инкремент, нужно сразу выйти из цикла.

for j:=0 to 10 do begin m:=0; n:=0;
m:=j; n:=-j;
if aaa3[i+m,e+h]<>0 then begin h:=h+1;
end;
if aaa3[i+n,e+h]=0 then begin h:=h-1;
end;
end;


как это реализовать?

thanks!


OlDemon   (2002-12-24 14:59:00) [1]

2 tester> используй while или repeat грамотнее будет :)))


BALU1111   (2002-12-24 14:24:00) [2]

Не лучше ли проверять условие, и при при нужном завершить цикл.


myor   (2002-12-24 13:32:00) [3]

>спасибо! я в дельфях начинающий...

это паскаль!

>А какже быстро?


for j:=0 to 10 do
begin
m:=0; // зачем, если дальше идет присвоение
n:=0; //
m:=j;
n:=-j;
if aaa3[i+m,e+h]<>0
then
begin
...
h:=h+1;// inc(h)
...
break; // выход после инкремента
end;
if aaa3[i+n,e+h]=0
then
begin // если у тебя одно действие (только декремент),
// зачем begin...end
h:=h-1; // dec(h)
end;
end;


Snap   (2002-12-24 11:55:00) [4]

Борцам за скорость лучше учить ассемблер. И все рекурсии сводить к циклам :))))


Внук   (2002-12-24 11:53:00) [5]

Не хочу спорить, тема стара как мир. Скажу только, что всегда обходился без них. И скорость непричем. А борцам за скорость советую тогда все рекурсии сводить в циклам :))


Snap   (2002-12-24 11:42:00) [6]

А какже быстро?


Smithson   (2002-12-24 11:41:00) [7]

Это если интересует красота кода паскаль, а не быстрота и эффективность...


Snap   (2002-12-24 11:40:00) [8]

Флаг поставить. А ещё можно каждый цикл в отдельную процедуру, и оттуда по exit :)


Novice   (2002-12-24 11:39:00) [9]

Внук © (24.12.02 11:34)

Как можно эффективно выйти из группы вложенных циклов без goto?


tester1   (2002-12-24 11:34:00) [10]

спасибо! я в дельфях начинающий...


Внук   (2002-12-24 11:34:00) [11]

Операторы break, continue, равно как и goto и процедуру exit можно без ущерба убрать из программы при грамотном формулировании алгоритма :)


MXA   (2002-12-24 11:13:00) [12]

break;


Наверх

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