Заработать на ФОРЕКС
Среда, 26.07.2017, 19:48
Всё для прибыльной торговли на FOREX!
Главная | Добавить в избранное | Сделать стартовойфорекс советники
Меню сайта
Категории раздела
Уроки по MQL4 [14]
Лучшие брокеры
заработок в интернете форекс бесплатно Виртуальный выделенный сервер для Форекс Виртуальный выделенный сервер для Форекс Виртуальный выделенный сервер для Форекс Виртуальный выделенный сервер для Форекс заработок в интернете заработок на форекс заработок в интернете заработок в интернете заработок в интернете заработок в интернете Виртуальный выделенный сервер для Форекс
Радио Forex
Друзья сайта
Поиск
Наш опрос
Рейтинг брокеров
Всего ответов: 1927
Термины ФОРЕКС
<a href="http://instaforex.com/ru/" rel="nofollow">Форекс портал</a>
Главная » Статьи » Уроки по MQL4 » Уроки по MQL4


MQL4 УРОК 4 – Операции и выражения в MQL4

Операции и выражения в MQL4MQL4 УРОК 4 – Операции и выражения в MQL4

Что такое операции и выражения?

На самом деле Вы прекрасно знаете, что такое операции. Если я Вам скажу, что +,-,*,/ – элементарные арифметические операции, Вы очень быстро вспомните, что означает слово "операция”.

 Я уже слышу, как Вы говорите: "О! Так я же знаю, что такое операции, расскажи, что же такое тогда выражения?”

Идентификаторы (Вы их ещё помните? Если нет, то гляньте в урок СИНТАКСИС) совместно с Операциями образуют Выражения.

Запутались? Рассмотрим это на примере:

Здесь:

x,y,z и w – идентификаторы.
=,* и / – операции.
А вся строчка – это выражение.

Если в конце выражения поставить символ ";”, то оно превращается в оператор:

Комбинации выражений формируют оператор.

Комбинации операторов формируют функцию.

Комбнации функций формируют программу.

В оставшейся части урока мы будем говорить про типы операций в MQL4.

Начнём с элементарных математических операций:

1 – Арифметические операции

В MQL4 существует 9 арифметических операций:

Операции и выражения в MQL4

Замечание: Нельзя комбинировать операция инкремента и декремента с другими выражениями.

Например, следующая строчка некорректна:

Но можно так:

2 – Операции присваивания

Смысл любого выражения в формировании результата, а затем присваивания этого результата левому операнду.

Например:

Здесь мы умножаем B на C и присваиваем результат A.

В MQL4 существует 11 операций присваивания:

Операции и выражения в MQL4

3 – Операции сравнения

Операции сравнения сравнивают два значения (два операнда) и возвращают либо True, либо False.

Это как ответить на вопрос "Вася выше Саши ? Да/Нет ?”

Например:

В MQL4 существует 6 операций сравнения:

Операции и выражения в MQL4

4 – Логические операции

Логические операторы заимствованы из Булевой алгебры, которая суть манипулирование верностью концептуальных абстрактных высказываний, не вдаваясь в истинный смысл концепций. Значние верности в Булевой алгебре может принимать лишь два значения: верно или неверно (true OR false).

В MQL4 логические операции также называются Булевыми операциями.

В MQL4 используются три основных логических операции:

Операции и выражения в MQL4

Замечание: Логические операции выполняются слева направо. Поэтому, если в операторе A && B; левый операнд равен нулю, то правый операнд даже не рассматривается. Аналогично, если в операторе A || B; левый оператор не равен нулю, то правый операнд даже не рассматривается.

5 – Битовые операции

Битовые (или побитовые) операции очень похожи на логические операции, но они работают на более низком уровне – бинарном уровне представления данных.

В MQL4 доступны следующие битовые операции:

Операции и выражения в MQL4

Замечание: Оба операнда, учавствующих в побитовых операциях, должны быть типа int.

6 – Другие операции

Есть несколько операций в MQL4, которые не входят ни в одну из предыдущих категорий:

  • Операция индексирования массива []
  • Операция вызова функции ()
  • Операция разделения аргументов функций , (запятая)

Мы подробнее узнаем про массивы и функции в следующем уроке. Так что просто запомните эти операции, как "Другие операции”.

Приоритеты операций. Моё любимое ;)

Если у Вас есть оператор, состоящий из нескольких выражений, и Вы явно не указываете, в каком порядке Вы хотите их выполнения, то порядок выполнения определяется исходя из приоритетов операций, входящих в оператор. Операции с более высоким приоритетом выполняются первыми. Например, все мы из школы знаем, что операция деления имеет более высокий приоритет, чем операция сложения. Поэтому, следующие два выражения эквивалентны:

Используя составные операторы необходимо быть точным и указывать порядок выполнения операций явно с помощью скобок (). Такая практика сделает Ваш код более лёгким для прочтения и редактирования. *

Далее следует список операций. Чем выше операция в списке, тем выше её приоритет. Операции с более высоки приоритетом выполняются раньше операций с более низким приоритетом. Если выбор стоит между двумя одинаковыми операциями, то следует помнить, что все бинарные операции (те, в которых учавствуют два операнда) выполняются слева направо, а все операции присваивания – наоборот – справа налево.

Оставляю список на английском. Заодно будете знать, как называются операции на ‘родном’ языке ;)

() Function call From left to right

[] Array element selection

! Negation From left to right

~ Bitwise negation

- Sign changing operation

* Multiplication From left to right

/ Division

% Module division

+ Addition From left to right

- Subtraction

<< Left shift From left to right >> Right shift

< Less than From left to right

<= Less than or equals > Greater than

>= Greater than or equals

== Equals From left to right

!= Not equal

& Bitwise AND operation From left to right

^ Bitwise exclusive OR From left to right

&& Logical AND From left to right

|| Logical OR From left to right

= Assignment From right to left

+= Assignment addition

-= Assignment subtraction

*= Assignment multiplication

/= Assignment division

%= Assignment module

>>= Assignment right shift

<<= Assignment left shift

&= Assignment bitwise AND

|= Assignment bitwise OR

^= Assignment exclusive OR

, Comma From left to right

* А теперь немного развлечения.
Обожаю приоритеты, потому что их почти никто никога наизусть не помнит. Достаточно выучить парочку и ты уже царь среди равных тебе программистов.
Например, можно спросить результат такого оператора ++ i ++; (но это уже больше к C/C++, где есть правый и левый инкремент). Или такого: i +++ i;
А вообще, приоритеты – один из хороших козырей в IOCCC – International Obfuscated C Code Contest — «международный конкурс запутанного кода на Си».



Категория: Уроки по MQL4 | Добавил: Profit (20.09.2013)
Просмотров: 1882 | Теги: Программа, MQL4, функция, Идентификаторы, Операции присваивания, Логические операции, Операции и выражения, Битовые операции, Операции сравнения, оператор | Рейтинг: 0.0/0

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Наш выбор брокеров
forex4you roboforex форекс бесплатно заработать на форекс instaforex nordfx

Копирование
VPS для Форекс
vps сервер для форекс
Заработать на ФОРЕКС
памм инвестирование
Форекс обзор
<a href="http://instaforex.com/ru/" rel="nofollow">Форекс портал</a>
Наша кнопка
Установите нашу кнопку себе на сайт

Форекс советники

Торговые сессии
Котировки Sell/Buy
vps для форекс
Журнал
FOREX MAGAZINE
Форекс рассылки
FxMail.ru
Рекомендуемые Форекс рассылки
Форма входа
Статистика
vps для форекс сервер для форекс
Онлайн всего: 3
Гостей: 3
Пользователей: 0
Торговля на финансовых рынках сопряжена с риском. Все материалы носят исключительно ознакомительный характер. Администрация сайта не несет ответственности за принимаемые Вами решения.
Copyright Profit © 2010 - 2017

Облако тегов: форекс для начинающих форекс для начинающих видео форекс для новичков форекс для тебя форекс для чайников форекс анализ технический анализ форекс прогноз форекс аналитика рейтинг форекс брокеров форекс видео брокеры форекс лучшие брокеры форекс надежный брокер форекс форекс брокеры отзывы самый лучший форекс брокер MQL4 Волновой форекс анализ и прогноз mql4 com Форекс аналитика от Trading Central трейдер VSA форекс вебинар бесплатные советники форекс советники форекс бесплатно vps для форекс форекс сервер советники форекс ПАММ памм счета стратегии форекс торговые стратегии форекс зaрaботaть нa форекс волновой анализ форекс волновой анализ волновой анализ рынка форекс волновой анализ рынка волновой анализ эллиотта волновой анализ элиота аналитика рынка форекс аналитика форекс аналитика форекс на каждый день форекс аналитика прогнозы trading central аналитика аналитика форекс на сегодня trading central заработок на форекс форекс советники лучшие советники форекс vps форекс советники бесплатно Форекс советник аналитика форекс прогноз ежедневная форекс аналитика форекс новости аналитика советники форекс 2014 прибыльные советники форекс советники форекс скачать скачать советник форекс советники форекс 2015 советники форекс 2016 аналитика форекс евро форекс аналити лучшая аналитика форекс аналитика форекс евро доллар trading central отзывы прогнозы от trading central технический анализ форекс анализ рынка форекс фундаментальный анализ форекс Анализ Форекс нелинейный волновой анализ упрощенн волновой анализ эл волновой анализ eur usd теория волн технический анализ рынка прогноз рынка форекс прогноз форекс прогноз доллара форекс прогноз курса форекс форекс прогноз евро доллар аналитика форекс прогнозы прогноз форекс на сегодня прогноз евро форекс аналитика рынка аналитика евро форекс аналитика форекс евро дол прогноз аналитика форекс графический анализ форекс свечной анализ на форекс Фундаментальный анализ форекс на сегодня прогноз рынка форек фундаменталь прогноз форекс 2016 форекс прогноз евро технический анали технический анализ для начинающих технический анализ трейдеров