База знаний

Блок «Функция»: вычисления с переменными

«Функция» — это блок логики для безусловных вычислений с пользовательскими переменными. В отличие от «Правило», вычисления в блоке «Функция» выполняются всегда, без проверки каких-либо условий. В интерфейсе конструктора блок отмечен зелёной вертикальной линией слева.

Блок «Функция» доступен только если в проекте создана хотя бы одна пользовательская переменная.

Структура блока «Функция»

Блок состоит из одного или нескольких выражений. Каждое выражение содержит три поля:

  • Переменная — выбор пользовательской переменной, с которой выполняется операция.
  • Операция — что нужно сделать с переменной.
  • Значение — число, текст или ответ на вопрос (зависит от выбранной операции).
Блок «Функция»: выражения с зелёными бейджами переменных, зелёная линия слева

Блок «Функция» в настройках логики

Доступные операции

  • Прибавить (+) — прибавить значение к текущему значению переменной.
  • Вычесть (−) — вычесть значение из текущего значения переменной.
  • Умножить (×) — умножить текущее значение переменной на указанное.
  • Разделить (÷) — разделить текущее значение переменной на указанное.
  • Присвоить значение — присвоить переменной произвольное значение (число или текст).
  • Присвоить ответ — присвоить переменной значение ответа респондента на конкретный вопрос. В выпадающем списке доступны все вопросы, расположенные до текущего вопроса включительно.

Условные вычисления в блоке «Правило»

Вычисления можно выполнять не только безусловно, но и по условию — через действие «Функция» в блоке «Правило». Механика идентична блоку «Функция», но операции выполняются только при истинности условий. Подробнее — в статье о блоке «Правило».

Управление блоком «Функция»

Через контекстное меню (иконка шестерёнки) доступны:

  • Добавить выражение — добавить в блок ещё одну строку выражения.
  • Переместить вверх / Переместить вниз — изменить порядок выполнения блока среди других логических операций.
  • Удалить функцию — удалить весь блок.

Чтобы удалить отдельное выражение, кликните по первому выпадающему списку в его строке и выберите в самом низу пункт Удалить выражение.

Пример использования

Вы создаёте квиз с подсчётом баллов. Переменная score с начальным значением 0. После каждого вопроса блок «Функция» прибавляет баллы к переменной score за правильный ответ. На финальной странице значение {score} отображается респонденту как итоговый результат.