IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

 
 Ответить  Открыть новую тему 
> Цикл в цикле, Прерывание
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Мужской
Реальное имя: Василий

Репутация: -  0  +


k:=0;
for i:=1 to m do
for j:=1 to n do
if (StringGrid1.Cells[j,i]='')or(StringGrid2.Cells[j,i]='') then
begin
inc(k);
break;
end;
if k<>0 then ShowMessage('матрицы имеют незаполненные ячейки')


вопрос:
если у меня условие выполняется, как прервать оба цикла сразу?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


а не проще ли взять цикл другого типа? while или until....
это, конечно, мое личное мнение, но пользоваться брейками без серьезных на то причин не люблю.


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 61
Пол: Мужской

Репутация: -  0  +


Цитата(BananaMan @ 4.06.2006 13:44) *

вопрос:
если у меня условие выполняется, как прервать оба цикла сразу?


вставить проверку если переменная bool = true тогда брейк здес... и "там". нет?


--------------------
...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Цитата
если у меня условие выполняется, как прервать оба цикла сразу?


for i := 1 to n do begin
for j := 1 to m do
if lalala[i,j] then break;
if lalala[i,j] then break;
end;


или

i := 1;
while (i <= n) do begin
j := 1;
while (j <= m) do begin
if lalala[i,j] then break;
inc(j);
end;
if j <= m then break else inc(i);
end;


или

i := 1;
while (i <= n) do begin
j := 1;
while (j <= m) and not(lalala[i,j]) do inc(j);
if j <= m then break else inc(i);
end;


Сообщение отредактировано: volvo -


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Цитата(BananaMan @ 4.06.2006 13:44)
вопрос:
если у меня условие выполняется, как прервать оба цикла сразу?


type
Interruption = class(TObject)
end;

try
for i:=1 to m do
for j:=1 to n do begin
if Condition then raise Interruction.Create;
end;
except
on Interruption do ShowMessage('Прерывание цикла')
end;
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


ну все... началось.
hardcase_offline, сейчас будешь объяснять человеку, не знающему, как заполнить массив из стринггрида, что такое класс.......


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Мужской
Реальное имя: Василий

Репутация: -  0  +


:-| так
попрошу без сарказма
и что такое class?))))
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


объектно-ориентированное программирование заинтересовало?...


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Новичок
*

Группа: Пользователи
Сообщений: 25
Пол: Мужской
Реальное имя: Василий

Репутация: -  0  +


вопрос на вопрос?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






Начнем флеймить?
BananaMan, у тебя на клавиатуре F1 заело?
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 




- Текстовая версия 18.10.2017 3:25
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"