Только, если логика мкл4 не соответствует логике русского языка (и математической логике). Т.к. выражение ("НЕ"rost) вовсе не значит, что rost==(равно)false, т.к. существует отдельное условие, оговаривающее, когда rost==false. Т.е. "не 5" вовсе не означает "2".
Только, если логика мкл4 не соответствует логике русского языка (и математической логике). Т.к. выражение ("НЕ"rost) вовсе не значит, что rost==(равно)false, т.к. существует отдельное условие, оговаривающее, когда rost==false. Т.е. "не 5" вовсе не означает "2".
Если вы хотите не 5 и не 2 то и задавайте rost как int
Только, если логика мкл4 не соответствует логике русского языка (и математической логике). Т.к. выражение ("НЕ"rost) вовсе не значит, что rost==(равно)false, т.к. существует отдельное условие, оговаривающее, когда rost==false. Т.е. "не 5" вовсе не означает "2".
Учите азы ;)
Мало того, я вам скажу ещё, что если bool rost у вас будет задано как 5 или 2, или -5 или -2, то это однозначно true, потому как для булевых переменных false - это ноль, true - всё остальное.
Мало того, я вам скажу ещё, что если bool rost у вас будет задано как 5 или 2, или -5 или -2, то это однозначно true, потому как для булевых переменных false - это ноль, true - всё остальное.
То есть Вы пытаетесь мне втолковать то же, что ранее объяснил Vladislav Andruschenko, но до меня не дошло: "Вторая строчка не имеет значения потому, что у вас rost = bool и может принимать только 2 значения и по умолчанию оно равно false ".
Тогда как мне оговорить второе условие? Дополнительным флагом? Или вообще без флагов, просто "условием в условиях" ? Наверное так лучше.
То есть Вы пытаетесь мне втолковать то же, что ранее объяснил Vladislav Andruschenko, но до меня не дошло: "Вторая строчка не имеет значения потому, что у вас rost = bool и может принимать только 2 значения и по умолчанию оно равно false ".
Тогда как мне оговорить второе условие? Дополнительным флагом? Или вообще без флагов, просто "условием в условиях" ? Наверное так лучше.
Вам будет легче понять, если Вы примете на веру, что в языках программирования есть условности. Например n=n+10; Разве это правильно с точки зрения математики и логики? И таких условностей много. Надо поверить, что любому числу соответствует логическое значение. 0 = false; Все остальные числа, как положительные, так и отрицательные = true. Вот скрипт, подтверждающий это:
//+------------------------------------------------------------------+//| Логика языка mql-4 PROBA.mq4 |//+------------------------------------------------------------------+#property strictvoidOnStart()
{
string s1="Числовое значение n: ";
string s2="Логическ значение n: ";
string s3="ЛогичЧис значение x: ";
string s4="Числовое значение x: ";
bool x;
int k;
Alert("-------------------------");
for(int n=-4; n++<3;) // Вот еще: можно ли так цикл записать? а Вы попробуйте!!!
{
s1 +=string(n)+" ";
s2 += (n ? "TRUE" : "false")+" ";
x=n;
s3 += (x ? "TRUE" : "false")+" ";
k=x;
s4 += (string)k + " ";
}
Alert(s4);
Alert(s3);
Alert(s2);
Alert(s1);
}
Вам будет легче понять, если Вы примете на веру, что в языках программирования есть условности. Например n=n+10; Разве это правильно с точки зрения математики и логики? И таких условностей много. Надо поверить, что любому числу соответствует логическое значение. 0 = false; Все остальные числа, как положительные, так и отрицательные = true. Вот скрипт, подтверждающий это:
А вот результат:
Спасибо! Про условности понял, учту. А вот чтобы разобраться в предложенном скрипте, увы, моих знаний мкл4 недостаточно. Простите :( .
Средства на счёте закончились, а советник пытается ордер открыть. Сервер писал "недостаточно средств для..." в итоге БАНН. Есть какой нибудь способ не рыпаться если лаве больше нету?
PolarSeaman: Средства на счёте закончились, а советник пытается ордер открыть. Сервер писал "недостаточно средств для..." в итоге БАНН. Есть какой нибудь способ не рыпаться если лаве больше нету?
Размер свободных средств, которые останутся после открытия указанного ордера по текущей цене на текущем счете. Если свободных средств не хватает, то будет сгенерирована ошибка 134 (ERR_NOT_ENOUGH_MONEY).
Данная переписка как раз свидетельствует, что в моём случае if(!rost) не то же самое, что if(rost==false). Потому что для false отдельное условие.
Вам с азов начинать нужно. Это - две абсолютно идентичные записи.
Это - две абсолютно идентичные записи.
Только, если логика мкл4 не соответствует логике русского языка (и математической логике). Т.к. выражение ("НЕ"rost) вовсе не значит, что rost==(равно)false, т.к. существует отдельное условие, оговаривающее, когда rost==false. Т.е. "не 5" вовсе не означает "2".
Только, если логика мкл4 не соответствует логике русского языка (и математической логике). Т.к. выражение ("НЕ"rost) вовсе не значит, что rost==(равно)false, т.к. существует отдельное условие, оговаривающее, когда rost==false. Т.е. "не 5" вовсе не означает "2".
Только, если логика мкл4 не соответствует логике русского языка (и математической логике). Т.к. выражение ("НЕ"rost) вовсе не значит, что rost==(равно)false, т.к. существует отдельное условие, оговаривающее, когда rost==false. Т.е. "не 5" вовсе не означает "2".
Учите азы ;)
Мало того, я вам скажу ещё, что если bool rost у вас будет задано как 5 или 2, или -5 или -2, то это однозначно true, потому как для булевых переменных false - это ноль, true - всё остальное.
Учите азы ;)
Мало того, я вам скажу ещё, что если bool rost у вас будет задано как 5 или 2, или -5 или -2, то это однозначно true, потому как для булевых переменных false - это ноль, true - всё остальное.
То есть Вы пытаетесь мне втолковать то же, что ранее объяснил Vladislav Andruschenko, но до меня не дошло: "Вторая строчка не имеет значения потому, что у вас rost = bool и может принимать только 2 значения и по умолчанию оно равно false ".
Тогда как мне оговорить второе условие? Дополнительным флагом? Или вообще без флагов, просто "условием в условиях" ? Наверное так лучше.
Спасибо.
То есть Вы пытаетесь мне втолковать то же, что ранее объяснил Vladislav Andruschenko, но до меня не дошло: "Вторая строчка не имеет значения потому, что у вас rost = bool и может принимать только 2 значения и по умолчанию оно равно false ".
Тогда как мне оговорить второе условие? Дополнительным флагом? Или вообще без флагов, просто "условием в условиях" ? Наверное так лучше.
Вам будет легче понять, если Вы примете на веру, что в языках программирования есть условности. Например n=n+10; Разве это правильно с точки зрения математики и логики? И таких условностей много. Надо поверить, что любому числу соответствует логическое значение. 0 = false; Все остальные числа, как положительные, так и отрицательные = true. Вот скрипт, подтверждающий это:
А вот результат:
Вам будет легче понять, если Вы примете на веру, что в языках программирования есть условности. Например n=n+10; Разве это правильно с точки зрения математики и логики? И таких условностей много. Надо поверить, что любому числу соответствует логическое значение. 0 = false; Все остальные числа, как положительные, так и отрицательные = true. Вот скрипт, подтверждающий это:
А вот результат:
Спасибо! Про условности понял, учту. А вот чтобы разобраться в предложенном скрипте, увы, моих знаний мкл4 недостаточно. Простите :( .
Средства на счёте закончились, а советник пытается ордер открыть. Сервер писал "недостаточно средств для..." в итоге БАНН. Есть какой нибудь способ не рыпаться если лаве больше нету?
Да, имеется.
Да, имеется.
Спасибо.