Имя: Пароль:
1C
 
цикл Для По в 1с
,
0 unbred
 
15.10.21
13:04
1. 3 67% (4)
2. 4 33% (2)
Всего мнений: 6

б=3;
    Для а = 1 по б Цикл
        Если а = 2 Тогда
            б = б+1;
        КонецЕсли;
    КонецЦикла;


сколько итераций пройдёт в цикле и почему?)
(пятницо)
1 exwill
 
15.10.21
13:08
(0) Так. И в чем прикол?
2 exwill
 
15.10.21
13:10
"И что, с этими двумя хохмами он и едет?" (С)
3 ДенисЧ
 
15.10.21
13:10
Я за такое обычно git blame делаю или вообще not hires
4 volfy
 
15.10.21
13:11
Думаю это бан
5 acht
 
15.10.21
13:11
Опять геня кого-то собеседует

3
6 pechkin
 
15.10.21
13:12
"по б" - вычисляется до цикла 1 раз
7 pechkin
 
15.10.21
13:13
не так как в c - for(i=0; i<5; i++)
8 unbred
 
15.10.21
13:13
(5) не. просто я без отладки не смог верно ответить.
9 1Сергей
 
15.10.21
13:17
(0) Переделай в рекурсию и не делай нам мозги
10 Злопчинский
 
15.10.21
13:18
в православных клюшках никакого чуда не будет,
цикл пройдет три раза штатно, после цикла а=4.
.
а что там в богомерзком снеговике, который упоротые писали иногда под дымом каким-то - хз.. ;-)
11 exwill
 
15.10.21
13:18
(9) Вот правильно! Пусть в наказание переделает в рекурсию
12 Kassern
 
15.10.21
13:21
(10) как в древних клюшках не знаю, а в современном модно-молодежном снеговике отработает 3 раза)

3
13 unbred
 
15.10.21
13:22
(11)     Для а = 1 по б Цикл
        Если а = 2 Тогда
            б = б+1;
        КонецЕсли;
        а=а-1;
       КонецЦикла
так сойдёт?)
14 1Сергей
 
15.10.21
13:23
(13) Садись два. Завтра с родителями в школу
15 ДенисЧ
 
15.10.21
13:23
(13) Ты вообще что пытаешься сделать?
16 exwill
 
15.10.21
13:24
(13) Это не рекурсия. Это - бесконечный цикл. Совершенно разные понятия
17 unbred
 
15.10.21
13:25
(15) ничего я не пытаюсь сделать. никогда такого не писал ( как в топике ) , сегодня у меня спросили, что будет если..ответил не правильно. всё.
18 exwill
 
15.10.21
13:27
Цикл и рекурсия взаимозаменяемы. Переделай в рекурсию так, чтобы 4 раза отрабатывало
19 Злопчинский
 
15.10.21
13:27
(13) теперь понятно чего тормозит снеговик.. он тупо циклит...
20 Kassern
 
15.10.21
13:28
(17) вы когда нибудь пробовали обходить табличную часть с конца удаляя не нужные строки? Вас не удивляло, что вы все таки обходите всю тч?
21 Kassern
 
15.10.21
13:30
(19) просто пытаются писать по клюшкински, а это не всегда работает, вот и тормозит)) Пора уже начать осваивать снеговиковые методы)
22 exwill
 
15.10.21
13:30
Кто первый переделает в рекурсию так, чтобы 4 раза отрабатывало, тому дам конфету
23 unbred
 
15.10.21
13:30
(19) алкодекларацию вчера смотрел в бп 3.0
запрос 5 минут выполняется, потом почти трое суток рисует табдок!!! по результатам запроса, из которого (табдока!!!)  потом рисует итоги... циклы тут не при чём
24 acanta
 
15.10.21
13:31
(20) а почему выгрузить в тз с номера по номер нельзя?
25 Злопчинский
 
15.10.21
13:36
(21) ну, если снеговиковые методы освоить - то будет тормозить гораздо эффективнее! ;-)
26 Гипервизор
 
15.10.21
13:38
(8) Ну можно было и в СП заглянуть.
27 1Сергей
 
15.10.21
13:38
(22)
Функция Рек(а,б)
    Если а=2 Тогда
        б=б+1;
    КонецЕсли;
    Если а<б Тогда
        Возврат Рек(а+1,б);
    КонецЕсли;
КонецФункции

а=1;
б=3;
Сообщить(Рек(а,б));
28 exwill
 
15.10.21
13:41
29 Kassern
 
15.10.21
13:42
(24) это вопросы к разработчикам 1с. Есть возможность получить массив строк по отбору, и выгрузить их в тз, если все строки не нужны.
30 1Сергей
 
15.10.21
13:42
(28) погоди, у меня там ошибка
31 exwill
 
15.10.21
13:45
(30) Вернет неопределено. Но ведь 4 раза отработает. Или я что-то не понял?
32 1Сергей
 
15.10.21
13:46
(31) всё так
33 exwill
 
15.10.21
13:47
(32) Тогда условия соблюдены )))
34 Kassern
 
15.10.21
13:48
(33) ну все шуруй на почту, конфетка ждет своего получателя)
35 exwill
 
15.10.21
13:49
Да, забирай. А то я сейчас от компьютера отойду и только через час подойду
36 osa1C
 
15.10.21
14:47
(0) прикольная хрень, заберу себе ))))
37 серый КТУЛХУ
 
15.10.21
15:04
инициализация значений границ выполняется при входе в цикл со счетчиком.

3
38 Garykom
 
гуру
15.10.21
15:09
(0) Советую проверить в "1C:Исполнитель. Бета-версия"
39 sikuda
 
15.10.21
17:11
(38) Зачем? Если просто проверить аналогичное на php, js, python
40 NurSagen
 
15.10.21
17:35
Я бы без сомнений выбрал 4...

4
41 exwill
 
15.10.21
18:40
(40) А теперь представьте, что пишите интерпретатор. Каков будет ваш выбор и почему?
42 серый КТУЛХУ
 
15.10.21
18:50
(41): а каким боком это к методологии и идеологии разницы между циклом со счетчиком и циклом по условию?
43 MWWRuza
 
гуру
15.10.21
19:49
Клюшки говорят - три.
https://content.foto.my.mail.ru/mail/m_w_w/_mypagephoto/h-409.jpg
И мне нет оснований им недоверять :-)
Почему - разбираться лень... Пятница, однако :-(
44 MWWRuza
 
гуру
15.10.21
19:53
Хотя, посмотрел глазами сейчас, вроде должно быть четыре...
45 xXeNoNx
 
15.10.21
19:57
а как же после третьей итерации указатель возвращается на начало цикла и происходит проверка на условие цикла, а затем происходит выход?
46 серый КТУЛХУ
 
15.10.21
19:58
(44): нет, не должно. см.(37)+(42).
47 серый КТУЛХУ
 
15.10.21
20:00
(45): это не цикл по условию. это цикл со счетчиком. в нем выполняется не проверка условия, а проверка на превышение счетчиком установленной при инициализации цикла предельного значения.
48 MWWRuza
 
гуру
15.10.21
20:02
Т.е., если внутри цикла мы меняем его предельное значение, то это не должно отрабатывать, должно работать только то, что до начала выполнения цикла назначено?
49 серый КТУЛХУ
 
15.10.21
20:02
(45) твое замечание будет верным для такого: б=3; а=1; Пока а <= б Цикл Если а=2 Тогда б=б+1 КонецЕсли КонецЦикла;
50 kosts
 
15.10.21
20:12
3

3
51 exwill
 
15.10.21
20:20
(48) А ты сам бы как сделал?
52 Злопчинский
 
15.10.21
20:21
(48) угу, это в клюшках давно известно
53 exwill
 
15.10.21
20:25
(42) Третьим. Т.е. самым что ни на есть прямым. Чтобы понять почему так, следует представить себе как бы ты действовал
54 xXeNoNx
 
15.10.21
20:29
(47) епт, проверка условия ВЫХОДА!
55 xXeNoNx
 
15.10.21
20:30
(49) хочешь сказать что у цикле нет условия выхода?
56 exwill
 
15.10.21
20:33
(55) Есть. И это достижение счетчиком ЗАРАНЕЕ установленного значения.
57 Сергиус
 
15.10.21
20:45
(0)Священный СП: "Максимальное значение счетчика цикла. Когда переменная <Имя переменной> становится больше чем <Выражение 2>, выполнение оператора цикла Для прекращается. Данное значение вычисляется однократно перед началом цикла и не может быть изменено внутри цикла."
58 Йохохо
 
15.10.21
20:58
(57) кто убил пятницу должен принести новую
59 Злопчинский
 
15.10.21
22:02
60 Droning1C
 
15.10.21
23:51
а я вот не знал, что границу нельзя изменить внутри цикла (СП в 5ти книгах стоит в сартире пылится, на случай, если туалетка кончится). Теперь вот знаю, спасибо автору)
61 Droning1C
 
15.10.21
23:52
(60) P/S Версия, встроенная в конфиг - для буржуев
62 xXeNoNx
 
16.10.21
02:24
(56) так и я про то что ктулху обосрался
63 серый КТУЛХУ
 
16.10.21
16:50
(62) пацан, если кто и обосрался тут - то это ты со своими догребываниями и играми в деда буквоеда.
мошешь не ёрзать - добро пожаловать в игнор, недоГений1с ты наш...
64 Patriot1C
 
16.10.21
17:12
Должно быть php

4
65 ДенисЧ
 
16.10.21
17:18
(64) php не должно быть. Нигде.
66 Patriot1C
 
16.10.21
18:23
(65) Даже в 1С-bitrix.ru ? ;)
67 acanta
 
17.10.21
11:52
(65) откуда в таком случае оно взялось?
68 ДенисЧ
 
18.10.21
05:25
(67) Самозародилось.
Есть несколько примеров того, чего быть не нужно. Но оно есть. Так и тут.
(66) А что, это священная корова, которую нельзя трогать?
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс