Логические и математические рассуждения при реализации алгоритма

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

Так как процесс разработки нового функционала программистами TSLab — достаточно трудоемкий процесс, состоящий из многих этапов, то от момента создания запроса до непосредственной реализации может пройти не одна неделя, а то и месяц (в зависимости от сложности задания). По этому многие вопросы, например, связанные с созданием индикаторов пользователь может решить своими руками!

Создание индикатора «Месяц года»

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

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

Логические и математические рассуждения при реализации алгоритма

Следующий шаг — построить логику в голове, каким образом достать месяц из данного варианта формата. Прежде всего не воспринимаем это как дату, а принимаем ее за обычную число "161122". Чтобы добраться до месяцев, мне нужно прежде всего исключить год. Значит мне нужно привести число к виду "160000". Далее из даты вычитаем ее и получаем остаток, то есть "1122" Чтобы получить такой вариант, достаточно использовать матметоды, которые уже встроены в редакторе формулы.

(Math.Truncate(Дата / 10000)) * 10000

Для начала 161122 делим на 10 000 и получится число "16,1122", а используемый метод убирает десятичные и остается целое число "16" которое умножив на 10000 получим необходимое значение. Далее процедуру нужно повторить с остатком из разницы на предыдущем шаге.

Math.Truncate(Формула1 / 100)

Таким образом мы получаем месяц года в понятном формате 1, 2, 3....12. Ну, и чтобы не делать такие блоки каждый раз, когда они необходимы, достаточно создать свой собственный индикатор и пользоваться когда он нужен. Ниже скрин как создать индикатор, это всего 6 блоков

Логические и математические рассуждения при реализации алгоритма

Пишите так же свои пожелания и трудности, в комментариях. Всегда открытое общение так же в нашем телеграм канале.

Начать дискуссию