Программы > Стратегии программирования
  
Стратегии программирования
Чтобы программы получались понятными и компактными, рекомендуется использовать условные операторы, операторы цикла и другие операторы программирования.
Программы можно использовать в блоках решения или вне их.
Условные операторы
С помощью условных операторов можно определять, какие расчеты следует выполнить, а какие пропустить. Используйте условные операторы, когда необходимо направить выполнение программы по определенному пути.
Пример:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Циклы
Цикл — это блок программы, в котором один или несколько операторов (тело цикла) многократно выполняются до тех пор, пока не будет выполнено условие завершения. Существуют следующие типы циклов.
Цикл for. Используется в тех случаях, когда указывается точное число итераций для выполнения цикла.
Цикл while. Используется в тех случаях, когда выполнение цикла должно останавливаться при достижении некоторого условия.
Пример:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Рекурсия
С помощью рекурсии при вычислении функции можно получить краткое и изящное решение. Рассмотрим следующее рекурсивное определение функции для вычисления наибольшего общего делителя.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Для написания рекурсивной функции необходимо выбрать имя, для которого не заданы другие определения. Если в качестве имени рекурсивной функции использовано имя какой-либо встроенной функции PTC Mathcad или имя ранее определенной функции, то при вычислении сначала будет сделано обращение к исходному определению этой функции.
Если функция определена как:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
второе определение функции f будет основано на первом. Только если в определении функции используется имя самой этой функции и нет другого сделанного ранее определения, PTC Mathcad будет вычислять ее рекурсивно.
В приведенной выше программе для рекурсивных вычислений определяемому имени функции mygcd должно быть назначено обозначение Функция (Function).
Рекурсивные определения функций не всегда бывают эффективными. В некоторых случаях эквивалентная программа с оператором цикла выполняется быстрее.
Выход из цикла или программы
Оператор break служит для преждевременного выхода из цикла.
С помощью оператора continue можно пропустить выполнение итерации.
Оператор return позволяет завершить работу программы с выходом из выполняющегося цикла.