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

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

sos [D7, WinXP]


ANDREI ©   (2004-12-01 14:21:00) 

Привет мастера! Необходимо в цикл repeat _ until вложить еще один такойже цикл (repeat) но при попытке это реализовать приложение сразу зависает. Как этого избежать? Заранее благодарен.


Andrei   (2004-12-01 15:30:00) [1]

С П А С И Б О ! ! !


Gloomer   (2004-12-01 15:29:00) [2]

прав как всегда  begin...end ©   (01.12.04 15:15) [11]
правильно будет
var a,b:integer;
begin
b:=0;
repeat
inc(b)
a:=0;
 repeat
inc(a)
 until a=10;
until b=100;
end;


Алхимик   (2004-12-01 15:18:00) [3]


> [13] Andrei   (01.12.04 15:17)
> >>Вот именно это зависать не должно.
> А зависает!!!


Вот воспользовался бы отладчиком - не пришлось бы мне краснеть. :)


Алхимик   (2004-12-01 15:17:00) [4]


> [11] begin...end ©   (01.12.04 15:15)
> > [8] Алхимик ©   (01.12.04 15:12)
>
> Должно.


Угу. :) Глазастый.


Andrei   (2004-12-01 15:17:00) [5]

>>Вот именно это зависать не должно.
А зависает!!!
>>или a,b не integer ;-)
и a и b сто пудов Integer.


begin...end   (2004-12-01 15:15:00) [6]

> [8] Алхимик ©   (01.12.04 15:12)

Должно.

> [7] Andrei   (01.12.04 15:09)

Перед вложенным циклом обнуляйте переменную a.


begin...end   (2004-12-01 15:15:00) [7]

> [8] Алхимик ©   (01.12.04 15:12)

Должно.

> [7] Andrei   (01.12.04 15:09)

Перед вложенным циклом обнуляйте переменную a.


Плохиш   (2004-12-01 15:14:00) [8]

или a,b не integer ;-)


Алхимик   (2004-12-01 15:12:00) [9]


> button1.click(XXXXXXXXXX);
> var a,b:integer;
> begin
> a:=0;
> b:=0;
>
> repeat
> inc(b)
>
>   repeat
>  inc(a)
>   until a=10;
>
> until b=100;
> end;
>
> зависает именно это....


Вот именно это зависать не должно.


Andrei   (2004-12-01 15:09:00) [10]

Ребта прошу прощения я ошибся в написании вопроса. Все правильно
я так и пишу:

button1.click(XXXXXXXXXX);
var a,b:integer;
begin
a:=0;
b:=0;

repeat
inc(b)

  repeat
 inc(a)
  until a=10;

until b=100;
end;

зависает именно это....


Andrei   (2004-12-01 14:53:00) [11]

Всем огромное спасибо!!!


oxffff   (2004-12-01 14:50:00) [12]

Уважаемый Андрей!

button1.click(XXXXXXXXXX);
var a,b:integer;
begin
a:=0;
b:=0;

 repeat
 inc(a); //////// нужно inc(b)

   repeat
   inc(b); //////// нужно inc(a)
   until a=10;

 until b=100;
end;


Sphinx   (2004-12-01 14:49:00) [13]

> repeat
> inc(a);
> repeat
> inc(b);
> until a=10;
> until b=100;

Сами внимательно посмотрите что написали :)

> repeat
> inc(b);
> until a=10;

вот и причина зависания...


Andrei   (2004-12-01 14:44:00) [14]

например вот так:

button1.click(XXXXXXXXXX);
var a,b:integer;
begin
a:=0;
b:=0;
repeat
inc(a);
repeat
inc(b);
until a=10;
until b=100;
end;

это к примеру в проге все сложнее, но зависает даже это.


Amoeba   (2004-12-01 14:26:00) [15]

Код в студию!


Алхимик   (2004-12-01 14:24:00) [16]


> но при попытке это реализовать приложение сразу зависает.
> Как этого избежать?

Воспользоваться отладчиком.
Сами по себе вложенные циклы зависания не вызывают.


Наверх

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