Бесконечное зацикливания цикла, как исправить? - страница 2 123456 Новый комментарий Dmitry Fedoseev 2017.07.23 10:39 #11 Alexey Viktorov: Где-то есть присваивание этой переменной значения false?Это не переменная Dmitry Fedoseev 2017.07.23 11:21 #12 fxsaber: Для меня загадка, почему многие так пишут.Код меньше строк занимает. fxsaber 2017.07.23 11:52 #13 Dmitry Fedoseev: Код меньше строк занимает. for(int i=0; i<OrdersTotal() && !_StopFlag; i++) if(OrderSelect(i,SELECT_BY_POS) && (OrderSymbol()==Symbol()) && (OrderMagicNumber()==Magic) && (OrderType()==OP_SELL)) { Alexey Viktorov 2017.07.23 12:06 #14 Dmitry Fedoseev: Это не переменнаяНедосмотрел. Беру свои слова взад... Andrey Kisselyov 2017.07.23 14:01 #15 fxsaber: Для меня загадка, почему многие так пишут.добрый день.потому что такой код выполняется быстрее.с уважением. Andrey Kisselyov 2017.07.23 14:04 #16 Dmitry Fedoseev: Обратите внимание, там ест пара таких строчек:В самом начале цикла.не сочтите за наглость, но похоже вы тут проездом, раз не смогли разобраться в двух булевых переменных данного кода.с уважением. fxsaber 2017.07.23 14:07 #17 Andrey Kisselyov: добрый день.потому что такой код выполняется быстрее.В режиме #property strict это не так. Andrey Kisselyov 2017.07.23 14:25 #18 fxsaber: В режиме #property strict это не так.создайте код который будет считать количество миллисекунд на выполнение данного задания и проверьте оба варианта выполнения1 вариант//выполнение проверки по каждому условию for(int w=0;w<10000;w++) { for(int q=0;q<OrdersTotal();q++) { if(!OrderSelect(q,SELECT_BY_POS))continue; if(OrderMagicNumber()!=Magik)continue; if(OrderSymbol()!=_Symbol)continue; if(OrderType()!=OP_SELL)continue; e++; } }2 вариант //проверка всех условий в одном операторе IF for(int w=0;w<10000;w++) { for(int q=0;q<OrdersTotal();q++) { if(OrderSelect(q,SELECT_BY_POS) && OrderMagicNumber()==Magik && OrderSymbol()==_Symbol && OrderType()==OP_SELL) e++; } }полученные результаты выведите на экран, если не хватит точности выполнения увеличите значение W до 100000 проходов.с уважением. Прошу помощь зала. Любые вопросы новичков по ExpertRemove();Sleep(1000*60*60); Andrey Kisselyov 2017.07.23 14:33 #19 Artem Onopin:Кусок кода работает и заносит сделки в массив MassLockSellTrade[], но происходит это бесконечно, голову уже сломал, что делать не знаю, подскажите или направьте советом))Артем, проблема по коду решена?с уважением. Dmitry Fedoseev 2017.07.23 14:35 #20 Andrey Kisselyov: не сочтите за наглость, но похоже вы тут проездом, раз не смогли разобраться в двух булевых переменных данного кода.с уважением.Но все же посмотрите... вдруг! Вдруг дойдет... хоть маловероятно, но вдруг... 123456 Новый комментарий
Где-то есть присваивание этой переменной значения false?
Это не переменная
Код меньше строк занимает.
Код меньше строк занимает.
Это не переменная
Недосмотрел. Беру свои слова взад...
потому что такой код выполняется быстрее.
с уважением.
Обратите внимание, там ест пара таких строчек:
В самом начале цикла.
с уважением.
добрый день.
потому что такой код выполняется быстрее.
В режиме #property strict это не так.
В режиме #property strict это не так.
1 вариант
2 вариант
полученные результаты выведите на экран, если не хватит точности выполнения увеличите значение W до 100000 проходов.с уважением.
Кусок кода работает и заносит сделки в массив MassLockSellTrade[], но происходит это бесконечно, голову уже сломал, что делать не знаю, подскажите или направьте советом))
с уважением.
не сочтите за наглость, но похоже вы тут проездом, раз не смогли разобраться в двух булевых переменных данного кода.
с уважением.
Но все же посмотрите... вдруг! Вдруг дойдет... хоть маловероятно, но вдруг...