МТ5 удивляет. А он работает с логическими выражениями?

 

было такое условие в МТ4

if (  ((x1-x2) >= (y1+y2+y3)) && x2!=-1)

{

 

в МТ5 такая конструкция всегда возвращает TRUE! но если переделать

t1 = x1-x2

t2 = y1+y2+y3

то

if ( (t1>=t2) && x2!=-1)  работает так как нужно

 

Код для проверки:

void OnStart()
  {
   int x1=10;
   int x2=7;    // 5 = true, 7 = false
   int y1=1;
   int y2=2;
   int y3=2;
//---
   if(((x1-x2)>=(y1+y2+y3)) && x2!=-1)
      Print("True");
   else
      Print("False");
//---
  }

Если x2=5, то выдает True, если 7, то False. Как и должно работать.

Приведите свой демонстрационный код со всеми значениями (чтобы можно было запустить и проверить), пожалуйста.

 
Renat:

Код для проверки:

Если x2=5, то выдает True, если 7, то False. Как и должно работать.

Приведите свой демонстрационный код со всеми значениями (чтобы можно было запустить и проверить), пожалуйста.

попробовал опять... все прошло удачно...

значения были

х1=2730

х2=2728

y1=200

y2=2

y3=3 

 
Konstantin83:

попробовал опять... все прошло удачно...

значения были

х1=2730

х2=2728

y1=200

y2=2

y3=3 

Где-то у Вас ошибка в другом месте. С приведенными параметрами возвращает false.
 

Начал знакомиться с MQL5. Меня он тоже удивляет.

С MQL4 понятно - взяли минимум для программиста, присущий всем языкам программирования, добавили специфику, отражающую реализацию терминала

и взаимодействие с торговым сервером, и все дела. Просто и хорошо.

MQL5 - уж очень острая смесь. Как по мне, то уж лучше  взяли бы да и просто расширили с++ своими специфическими классами.

Вот это был бы язык - то что надо и компилятор не надо было писать, получился бы монстр нечто вроде PHP.


А ведь есть люди не знающие с++.  Как вы думаете, смогут они освоить MQL5 ?


Но самое поганое здесь то, что MQL5 никак не связан с MQL4.  Нормальные люди создавая новую версию языка первой задачей

ставят совместимость с предыдущими версиями.  Пусть я использую компилятор с MQL5, но пусть он нормально компилирует и программы,

написанные на MQL4.   Короче говоря, разработчики очень далеки от народа, им важнее оказалось реализовать свои представления об идеальном языке.

 
ehoc:

Начал знакомиться с MQL5. Меня он тоже удивляет.

С MQL4 понятно - взяли минимум для программиста, присущий всем языкам программирования, добавили специфику, отражающую реализацию терминала

и взаимодействие с торговым сервером, и все дела. Просто и хорошо.

MQL5 - уж очень острая смесь. Как по мне, то уж лучше  взяли бы да и просто расширили с++ своими специфическими классами.

Вот это был бы язык - то что надо и компилятор не надо было писать, получился бы монстр нечто вроде PHP.


А ведь есть люди не знающие с++.  Как вы думаете, смогут они освоить MQL5 ?


Но самое поганое здесь то, что MQL5 никак не связан с MQL4.  Нормальные люди создавая новую версию языка первой задачей

ставят совместимость с предыдущими версиями.  Пусть я использую компилятор с MQL5, но пусть он нормально компилирует и программы,

написанные на MQL4.   Короче говоря, разработчики очень далеки от народа, им важнее оказалось реализовать свои представления об идеальном языке.

Да.. МайкроСофт, например, - пишет - ОБСОЛЕТЕ - но можно.. Но не стоит..;)
 
ehoc:

А ведь есть люди не знающие с++.  Как вы думаете, смогут они освоить MQL5 ?

Смогут. Не думаю, а знаю. Даже при отсутствии учебника.
 

ehoc:

Пусть я использую компилятор с MQL5, но пусть он нормально компилирует и программы,

написанные на MQL4.   Короче говоря, разработчики очень далеки от народа, им важнее оказалось реализовать свои представления об идеальном языке.

А как это даже теоретически возможно, если у мт5 и мт4 разные функции.
 

MQL 5 не то чтобы удивляет. Он вообще воспринимается, как другой язык, после мкл 4. Похожий, но другой. И не сказать, что более удобный. Разве что наличие какого-никакого ооп  добавляет удобств. Я, напримеер, так и не поняла, зачем было менять названия зарезервированных функции с init на OnInit  и т. д. Да и работа некоторых функций не доосталяет особой радости. 

 

Создается впечатление, что немного поторопились.

 
Cherrr:

MQL 5 не то чтобы удивляет. Он вообще воспринимается, как другой язык, после мкл 4. Похожий, но другой. И не сказать, что более удобный. Разве что наличие какого-никакого ооп  добавляет удобств. Я, напримеер, так и не поняла, зачем было менять названия зарезервированных функции с init на OnInit  и т. д. Да и работа некоторых функций не доосталяет особой радости. 

 Создается впечатление, что немного поторопились.

На счет OnInit и прочего - все вполне понятно и логично, в большинстве языков которые я знаю с On начинаются все события...

Изменение лексики языка тоже вполне объяснимо, те кому нужно давно с этим разобрались...

 

Начали чем попало мерятся :D

Мне MQL5 больше нравится, вот и все.

А сейчас хоть сколько спорьте, все равно разработчики не сделают в МТ5 MQL4.

Ну на счет С++ со своими классами... Это не безопасно, сопрут ваши денежки первым же индикатором :D
Мыслите шире, дальше своего носа.

Причина обращения: