возвращает политику исполнения. - страница 5

 
Ivan_Invanov:
Проясните пожалуйста ситуацию с операторами == и != . Если сравнимые переменные представлены истиной, когда они имеют любое ненулевое значение(в справке так написано). Как тогда представлены массивы? И почему в этом примере идёт сравнение "не равно двум", почему именно двум, если любое ненулевое значение это истина, если нет разницы, если бы там стояла 1, почему там написано именно 2 ? Вот код из официального примера (из советника с терминалом Moving Average 2009-2017 v1.00 строка 132).

1. Верно ли, что любое ненулевое значение представлено истиной , когда сравнивается в операторах "=="    ,    "!=" ?

2. Как представлен массив? как его вообще можно сравнить с числом?

3. Почему в сравнении стоит "2"? Если согласно справке истина это любое ненулевое значение, тогда логично написать "1".

4. сработало ли условие if  если CopyRates получила ошибку  ?

Прочтите внимательно в документации что возвращает функция CopyRates() и всё поймёте.

 
Alexey Viktorov:

Прочтите внимательно в документации что возвращает функция CopyRates() и всё поймёте.

Я специально составил вот список вопросов, чтобы получить развёрнутый ответ, а не односложный и не очередную отсылку. Если хотите помочь, ответьте по порядку на вопросы пожалуйста.
 
Ivan_Invanov:
Я специально составил вот список вопросов, чтобы получить развёрнутый ответ, а не односложный и не очередную отсылку. Если хотите помочь, ответьте по порядку на вопросы пожалуйста.
Я читал справку, там написано вернет -1, куда вернет , целочисленно или в массивы ? Если в массивах это недопустимое значение , наверно целочисленно ? А про операторы отношения что?
 
Ivan_Invanov:
Проясните пожалуйста ситуацию с операторами == и != . Если сравнимые переменные представлены истиной, когда они имеют любое ненулевое значение(в справке так написано). Как тогда представлены массивы? И почему в этом примере идёт сравнение "не равно двум", почему именно двум, если любое ненулевое значение это истина, если нет разницы, если бы там стояла 1, почему там написано именно 2 ? Вот код из официального примера (из советника с терминалом Moving Average 2009-2017 v1.00 строка 132).

1. Верно ли, что любое ненулевое значение представлено истиной , когда сравнивается в операторах "=="    ,    "!=" ?

2. Как представлен массив? как его вообще можно сравнить с числом?

3. Почему в сравнении стоит "2"? Если согласно справке истина это любое ненулевое значение, тогда логично написать "1".

4. сработало ли условие if  если CopyRates получила ошибку  ?

CopyRates() возвращает не bool, а int. Копируем два бара (4-ый параметр) и проверяем,что их скопировано 2.

 
Ivan_Invanov:
Я специально составил вот список вопросов, чтобы получить развёрнутый ответ, а не односложный и не очередную отсылку. Если хотите помочь, ответьте по порядку на вопросы пожалуйста.

Ну раз вы не можете прочесть там прочтите тут:

Возвращаемое значение

Количество скопированных элементов массива либо -1 в случае ошибки.

Возвращает количество скопированных элементов. Запланировано получать 2 элемента и в запросе поставлено 2. Если функция вернула любое число кроме 2 значит что-то не так. И это никакого отношения не имеет к значениям массива. 

 
Dmitry Fedoseev:

CopyRates() возвращает не bool, а int. Копируем два бара (4-ый параметр) и проверяем,что их скопировано 2.

Как мы можем проверить, что их скопировано 2, если любое ненулевое значение истина в этом операторе?
 
Про true и false. Если бы сравнивали так: if(2){} или if(-1){} - то они все true. Но ведь делается сравнение на равенство двух чисел x==2, и вот это выражение может быть true или false. Если x равно 2, то true, в остальных случаях false.  
 
Dmitry Fedoseev:
Про true и false. Если бы сравнивали так: if(2){} или if(-1){} - то они все true. Но ведь делается сравнение на равенство двух чисел x==2, и вот это выражение может быть true или false. Если x равно 2, то true, в остальных случаях false.  

По вашим словам 2==2 это истина и например 1234==2 это ложь. Но в справке написано, что любое ненулевое значение в этом операторе истина, значит 1234==2 это истина. 

 
Alexey Viktorov:
Палата №6… Извините

Это из справки

Файлы:
1111.jpg  29 kb
 
Ivan_Invanov:

Это из справки

Извините ещё раз. Не успел удалить…

Вы можете ответить только «ДА» или «НЕТ»

  • 2 равно 2
  • 1234 равно 2
Жду от вас два ответа.
Причина обращения: