Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.01.06;
Скачать: [xml.tar.bz2];

Вниз

люди, как выйти из цикла?   Найти похожие ветки 

 
tester1   (2002-12-24 11:09) [0]

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

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!


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

break;


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

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


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

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


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

Внук © (24.12.02 11:34)

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


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

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


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

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


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

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


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

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


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

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


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

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

это паскаль!

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


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;



 
BALU1111   (2002-12-24 14:24) [11]

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


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

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



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

Форум: "Основная";
Текущий архив: 2003.01.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
1-15055
vilfred
2002-12-24 14:37
2003.01.06
народ, лыжы уже не едут, как это сделать???


4-15346
Lexa1900
2002-11-17 21:21
2003.01.06
Как отловить нажатие кнопки?


1-15010
viper
2002-12-24 12:39
2003.01.06
dbgrid


3-14936
freeman
2002-12-11 22:12
2003.01.06
файл-серверная база данных


14-15291
Sergo
2002-12-18 08:18
2003.01.06
Электромагнитная картина мира





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский