Это действительно зависит от того, что означает комплекс. Если ваш «простой» алгоритм состоит из 150 строк почти одного и того же кода, мои глаза застекятся, и я не смогу его понять. Если вы поместите эти условия в матрицу или что-то в этом роде, а ваш код будет циклом для чтения матрицы и принятия решений, я пойму это лучше, хотя цикл может быть менее «простым», чем набор операторов if / else.
Если в основном вы говорите о программе на Perl, в которой вы делаете все в одной строке, широко используя переменную по умолчанию $ _, я бы сказал, придерживайтесь более длинной и более подробной версии.
Если есть принятая формула, чтобы сделать что-то, вы можете использовать принятую формулу. Если существует простая алгебраическая формула, которая занимает 3 или 4 строки, а комплексное дифференциальное уравнение занимает одну строку, вам следует использовать простую алгебраическую формулу. В случае, упомянутом в комментариях, я думаю, что алгоритм PID "проще", чем 150 строк кода if / else. Я не думаю, что вы используете алгоритм, чтобы скрыть что-либо, скорее вы используете стандартные методы в области проблемы. Просто обязательно прокомментируйте его и, возможно, даже добавьте ссылку на веб-страницу, описывающую формулу.