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

Вниз

Как прервать цикл for   Найти похожие ветки 

 
EkZot   (2006-09-28 23:02) [0]

сабж


 
antonn ©   (2006-09-28 23:03) [1]

halt


 
Ketmar ©   (2006-09-28 23:04) [2]

break


 
cyborg ©   (2006-09-28 23:05) [3]

break


> [1] antonn ©   (28.09.06 23:03)

Бгы :)


 
Marser ©   (2006-09-28 23:05) [4]

Break


> [1] antonn ©   (28.09.06 23:03)
> halt

?


 
antonn ©   (2006-09-28 23:07) [5]

Marser ©   (28.09.06 23:05) [4]
> [1] antonn ©   (28.09.06 23:03)
> halt

?

кто скажет, что цикл не прервется, пусть первым кинет в меня камень:)


 
TUser ©   (2006-09-28 23:09) [6]

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


 
grisme ©   (2006-09-28 23:16) [7]

TUser ©   (28.09.06 23:09) [6]
+1
можно уронить строительный кран для надежности :) водородную бомбу, на крайний случай, бросить :))


 
EkZot   (2006-09-28 23:18) [8]

так останавливается ыся программа, а мне только цикл надо осчтановить. break не работает.


 
cyborg ©   (2006-09-28 23:20) [9]

> [8] EkZot   (28.09.06 23:18)

Куку!

В смысле как не работает?


 
antonn ©   (2006-09-28 23:20) [10]

exit


 
grisme ©   (2006-09-28 23:21) [11]

antonn ©   (28.09.06 23:20) [10]
exitprocess(0);
:)


 
default ©   (2006-09-28 23:24) [12]

опять пазитроныч или ему подобный


 
Ketmar ©   (2006-09-28 23:25) [13]

>[5] antonn(c) 28-Sep-2006, 23:07
>кто скажет, что цикл не прервется, пусть первым
>кинет в меня камень:)
EnableDebugPrivilege()/ExitWindowsEx().


 
TUser ©   (2006-09-28 23:44) [14]

>  break не работает.

А ты на Delphi сидишь?


 
ArtemESC ©   (2006-09-28 23:48) [15]

Так компилю будет легче:

for ...
begin
....
 asm
  jmp @@L
 end;

end;
:L


 
Gero ©   (2006-09-28 23:54) [16]

Найми программиста.


 
Anatoly Podgoretsky ©   (2006-09-29 00:07) [17]

Он в это не верит и обижается когда ему говорят.


 
RASkov   (2006-09-29 00:18) [18]

А можно и так :)
procedure TForm1.Button1Click(Sender: TObject);
var N: Integer; label A, B;
begin
 for N:=0 to 10 do
  if Random(20)<>5 then
    ListBox1.Items.Add(IntToStr(N)) else goto A;
 goto B;
A: ListBox1.Items.Add("Прервали");
B: ListBox1.Items.Add("Конец");
end;


 
vidiv ©   (2006-09-29 00:38) [19]


> default ©   (28.09.06 23:24) [12]
> опять пазитроныч или ему подобный

а в чем прикол?


 
_Ламер_   (2006-09-29 02:32) [20]

Как это break не работает? Это из какого анекдота?


 
SergP ©   (2006-09-29 02:37) [21]

> [8] EkZot   (28.09.06 23:18)
> так останавливается ыся программа, а мне только цикл надо
> осчтановить. break не работает.


Видимо проблема в периферии...


 
Asteroid ©   (2006-09-29 03:30) [22]

> RASkov   (29.09.06 00:18) [18]
"Прервали конец"...К чему бы это? :)

А чтобы компилятору было совсем легко...
asm
 xor eax, eax
 mov [eax], eax
end

"кто скажет, что цикл не прервется, пусть первым кинет в меня камень:)" (с) [5]


 
vidiv ©   (2006-09-29 08:20) [23]

Если попытаться убить smss.exe, то прервуться все циклы в системе =)


 
начинающий ©   (2006-09-29 08:58) [24]


> Как прервать цикл for

Ctrl+Alt+Del, Снять задачу.


 
kaif ©   (2006-09-29 10:33) [25]

Как телепат предлагаю прервать цикл так:

var
 StopFlag: boolean = False;

procedure TForm1.Button1Click(Sender: TObject);
begin

 StopFlag := False;

 for i := 1 to 100000 do
 begin
   //здесь то долгое, что заставляет задавать этот вопрос на форуме
   if i mod 100 then
   begin
     Application.ProcessMessages;    
      if StopFlag then
        break;
   end;
 end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 StopFlag := True;
end;


 
kaif ©   (2006-09-29 10:34) [26]

описался:

if (i mod 100) = 0 then


 
kaif ©   (2006-09-29 10:37) [27]

Дело в том, что цикл for в Windows-е не телепат и не догадывается, что пользователь нажал кнопку Button2.
:)
Пока мы принудительно не протолкнем на обслуживание всю очередь сообщений при помощи

Application.ProcessMessages


 
Alx2 ©   (2006-09-29 10:50) [28]

>kaif ©   (29.09.06 10:34)

>if (i mod 100) = 0 then

if (i mod 128) = 0 then

:)


 
Ketmar ©   (2006-09-29 12:00) [29]

>[27] kaif(c) 29-Sep-2006, 10:37
>Application.ProcessMessages
что чревато нехорошими последствиями в виде повторных вызовов процедур и прочего. рядом с этим советом стоим упоминать о том, что надо бы блокировать ненужные контролы. %-)


 
RASkov   (2006-09-29 22:27) [30]

Удалено модератором


 
VirEx ©   (2006-09-29 23:35) [31]


> Как прервать цикл for
> EkZot   (28.09.06 23:02)
> сабж

молиться сын, молиться батюшке нашему


 
Германн ©   (2006-09-30 02:10) [32]

Имхо.
Если видишь ветку созданную EkZot, значит это ветка для флуда.
Поскольку автор в обсуждении почти всегда отсутствует. И информация от него близка к нулю.
:-)
Логично было бы мне тут дать призыв, типа "Даёшь ф..." в этой ветке, но из уважения к модераторам, а также из-за природной сдержанности не дам! :-)


 
Pazitron_Brain ©   (2006-09-30 09:18) [33]

Он на end прервется.


 
Pazitron_Brain ©   (2006-09-30 09:20) [34]

> [12] default ©   (28.09.06 23:24)

У меня для этого свой ник есть.


 
DiamondShark ©   (2006-09-30 09:35) [35]


> У меня для этого свой ник есть.

Его именем прерывали циклы...


 
Пользователь   (2006-09-30 09:36) [36]

Pazitron_Brain ©   (30.09.06 09:18) [33]
Он на end прервется


"Ты эту траву больше не кури, сынок" (С) Мама


 
Пользователь   (2006-09-30 09:40) [37]

Удалено модератором


 
Gydvin ©   (2006-09-30 11:32) [38]

Удалено модератором



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

Форум: "Прочее";
Текущий архив: 2006.10.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.53 MB
Время: 0.037 c
1-1158216618
AndreyAR
2006-09-14 10:50
2006.10.22
Заполнение формулы в Excel


4-1149743403
Misha Uskov
2006-06-08 09:10
2006.10.22
Хук CoCreateInstance


11-1131453880
XProger
2005-11-08 15:44
2006.10.22
Минимальная DLL


3-1156315353
ак
2006-08-23 10:42
2006.10.22
dbExpress с MySQL


2-1159781308
СержК
2006-10-02 13:28
2006.10.22
Как поставить курсор на нужную строку в RichEdit1





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский