Имя: Пароль:
1C
1С v8
Until vs GoTO
,
0 spectator_in
 
28.12.11
15:23
В других языках программирования есть такой цикл

Repeat
  Statement1;
 {Statement2;
  ...}
Until Expression

А какой аналог у него в 1с? Единственное что получается.
   
~Метка:    
   //много строчек кода
Если Условие=Выполняется Тогда
   Перейти ~Метка;    
КонецЕсли;
1 Ёпрст
 
28.12.11
15:24
Прервать
2 Ёпрст
 
28.12.11
15:25
обычный цикл + условие + (1).
И не надо никакой метки.
3 Ёпрст
 
28.12.11
15:25
будет тебе цикл с постусловием
4 2S
 
28.12.11
15:26
Пока 1=1 Цикл
...
Если НеНравится = 1 Тогда
прервать
КонецЕсли;
КонецЦикла;
5 spectator_in
 
28.12.11
15:29
вот уже два варианта извращения)
кто придумает третий?
6 Азат
 
28.12.11
15:30
(5) причем тут 2? если (4) тупа плагиат (2)?
7 Doomer
 
28.12.11
15:31
(0) Пишите на ассемблере.
8 2S
 
28.12.11
15:31
(6) ) это в практике, один хер он бы не понял на словах
9 YF
 
28.12.11
15:32
(5) А зачем вообще этот вариант нужен? Мне, честно говоря, хватает цикла с Пока
10 marvak
 
28.12.11
15:32
(0) в 1С нет цикла с пост условием
11 spectator_in
 
28.12.11
15:36
(6)
свой вариант я тоже считаю извращением) значит 2 варианта
12 Ненавижу 1С
 
гуру
28.12.11
15:37
УсловиеВходаПервыйРаз = Истина;
Пока УсловиеВходаПервыйРаз Или ВашеУсловие() Цикл
 ...
 УсловиеВходаПервыйРаз = Ложь;
КонецЦикла;
13 Ёпрст
 
28.12.11
15:38
можно так еще

а=0;
Пока <Условие> или а=0 Цикл
 а=200;
КонецЦикла
14 Ёпрст
 
28.12.11
15:39
(12) чорт, опередил
15 Mort
 
28.12.11
15:41
Продолжать = Истина;
Пока продолжать Цикл

Продолжать = ТвоёУсловие();
КонецЦикла;
16 Ёпрст
 
28.12.11
15:42
(15) красиво
17 spectator_in
 
28.12.11
15:45
(15)(16)
Согласен, понятная красота
18 sergeante
 
28.12.11
16:14
(0)
Я придираюсь, но по-честному, то цикл Repeat..Until Expression работает, пока Expression=Ложь.

Выход из цикла происходит, когда условие Истина. Поэтому:

(15)

Завершить = Ложь;
Пока НЕ Завершить Цикл
  Завершить = ТвоёУсловие();
КонецЦикла;
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс