ВАЖНО! Для создания торговых роботов необходимо хорошо знать и четко понимать, как работают логические операторы, операторы сравнения, конструкция if then else end, и функции в языке программирования Lua.

Возьмем, для примера код скрипта «003 Арифметические действия.lua».

В данном скрипте после каждого арифметического действия на экран выводится строка с названием действия и результатом операции. Допустим, нам будет необходимо многократно выполнять арифметические действия и выводить на экран их результат, тогда нам придется многократно писать строку кода с выводом на экран результата, это не самая лучшая идея, поскольку таких операций может быть и 100 и 1000. Лучшим решением будет написать функцию, которая будет выполнять арифметические действия и выводить на экран результат. В процессе написания функции станет понятна вся мощь их использования.

Приступим. Создадим новый файл скрипта под названием «006 Пример функции.lua». В нашей функции будем использовать арифметические операции сложение, вычитание, умножение, деление и возведение в степень.

Объявим числовые переменные, которые будут содержать аргументы арифметических действий, назовем их «x» и «z» и строковую переменную, которая будет содержать вид арифметического действия, назовем ее «Act» (от английского слова Action – действие).

Переменной «x» присвоим значение 10. Переменной «z» присвоим значение 5. Переменную «Act» оставим пустой, ей будут присваиваться символ арифметического действия например «+», «-«, «*», «/», «^».

Перейдем к созданию самой функции. Мы одновременно будем писать основной код программы и код функции, шаг за шагом создадим то, что запланировали. Запишем, в первой строке скрипта, пустую функцию с именем PrintCalc. Как уже говорилось ранее коды функций должны располагаться выше основного кода скрипта.

На данном этапе функция ничего не принимает на вход, ничего не делает и ничего не возвращает. Для выполнения арифметических действий, нам необходимо передать в функцию переменные, над которыми мы будем совершать арифметические действия и само действие, которое нужно совершить. Следовательно, все три переменные, которые у нас объявлены. В скобках функции добавляем, через запятую PrintCalc(x, z, Act).

Для выполнения расчетов в функции объявим пустую переменную «y», в которую будет записываться результат арифметического действия.

Наша функция должна выводить на экран результат действия и его название. Следовательно, нам понадобится еще одна переменная, которая будет содержать название действия. Объявим строковую переменную с именем «NameAct».

Рассмотрим первое арифметическое действие в нашей функции, пусть это будет сложение. Нам нужно сложить значения двух переменных «x», «z» и результат записать в переменную «y».

y = x + z

Сложение будет выполняться, если на входе в функцию, переменная Act будет равна «+», следовательно, данное условие нужно прописать. Если Act == «+» , тогда операция выполняется. Тут нам помощь придет конструкция if then else end. Также присвоим переменной NameAct значение «сложение».

Поскольку мы будем выводить на экран название операции, то нам нужно добавить еще одну строку, в которой будет присваиваться название действия в переменную «NameAct». В данном случае запишем NameAct = «сложение».

В конце функции выведем результат на экран в читаемом виде.

print(NameAct, «\n»..x..» «..Act..» «..z..» «..»=»..» «..y, «\n»)

Расшифруем запись:

NameAct – название операции,
«\n» – переход на новую строку,
.. – конкатенация строк т.е. склейка,
x – значение переменной «x»,
» » – пробел,
Act – символ арифметического действия,
z – значение переменной «z»,
» » – пробел,
«=» – знак равенства,
» » – пробел,
y – значение переменной «y»,
«\n» – переход на новую строку.

Это ознакомительная часть курса, что бы просмотреть полный курс, пожалуйста оплатите подписку, подписка действует 2 года. Помимо доступа к полному тексту курса, предоставляются все коды скриптов и вспомогательные файлы. Первые три раздела предоставляются бесплатно в полном объеме. Всем кто ранее покупал коды скриптов доступ будет предоставлен бесплатно, пожалуйста пришлите запрос с Email на который Вам были направлены коды.