Операторы. Арифметические операции


например, forex

Составной оператор

В выпуске Использование констант вэксперте мынаучились описывать константы иразобрались, чтоже вкоде нашего первого эксперта означают следующие строчки:

   #define STATE_SQUARE   0
#define STATE_LONG 1
#define STATE_SHORT 2

В выпуске Внешние переменные мынаучились задавать параметры эксперта, инам стали понятны следующие строчки:

   extern int           MAPeriod     = 13;
extern double LotsNumber = 1.0;

Кроме локальных истатических переменных мырассмотрели иглобальные (науровне одного модуля) переменные, врезультате приоткрылась завеса над еще двумя строчками нашего эксперта:

   int CurrentState;
int MyOrderTicket;

Теперь рассмотрим более подробно, чтоже внашем эксперте делает функция init().

   int init()
{
//----
if (iMA(NULL, 0, MAPeriod, 0, MODE_EMA, PRICE_CLOSE, 0) > Close[0])
CurrentState = STATE_SHORT;
else CurrentState = STATE_LONG;

MyOrderTicket = 0;
//----
return(0);
}

Как мызнаем извыпуска Функции init(), start() иdeinit() эта функция запускается вследующих случаях:

  • после присоединения советника кграфику;
  • после старта MetaTrader 4иподгрузки исторических данных;
  • после смены инструмента или периода графика;
  • после перекомпиляции программы вредакторе MetaEditor;
  • после изменения настроек эксперта;
  • после смены торгового счета.

Если отбросить комментарии, которые начинаюся сдвойного флэша (//), томыувидим, что эта функция состоит изнескольких команд (назовем ихоператорами), разделенных точкой запятой (;). Когда нам нужно объединить несколько операторов водин связный блок (например, вфункцию), мыиспользуем конструкцию, которая называется составной оператор. Иными словами мыэти операторы заключаем вфигурные скобки { и}. После закрывающей фигурной скобки { недолжно стоять точки сзапятой.

Пример составного оператора:

  if (b==3)
{
b = b + 1;
Print (b);
}

Оператор присваивания. Арифметические операции

Формат оператора присваивания:

   переменная = выражение;

В качестве левой части оператора присваивания может выступать также элемент массива. Вначале вычисляется выражение, которое потом присваивается переменной.

Пример оператора присваивания:

   b  = b  + 1;

Допустим, что перед выполнением этого оператора переменная b была равна 7.Тогда вначале вычисляется выражение вправой части ( 7+1= 8), азатем значение этого выражение (8)присваивается переменной b.

В выражении может использоваться несколько типов операций. Рассмотрим самый простой тип— арифметические операции:

ОперацияПример
Сложение двух аргументов j + k
Вычитание второго аргумента изпервого j— k
Умножение аргументов j * k
Получить частное отделения первого аргумента навторой j / k
Получить остаток отделения первого аргумента навторой j % k
Изменить знак аргумента -k

Вне выражений (ввиде отдельного оператора) можно применять операции:

  • Увеличение аргумента наединицу: j++
  • Уменьшение аргумента наединицу: j-

Пример:

   j++;                // верное выражение
   k = (j++) + 3;   // неверное выражение


Перейти к главе «Операции отношения и логические операции».
 
+7 (495) 710-76-76
8 (800) 200-01-31
по России бесплатно

закрыть

Вход в личный кабинет

Для счета alpari.classic введите номер счета (буква и 4 цифры) и пароль в ЛК.

Для счетов alpari.micro и alpari.partner введите логин и пароль в МТ.

Зарегистрироваться!Забыли пароль?

 
Rambler's Top100