Как задать функцию в маткаде с условием
Перейти к содержимому

Как задать функцию в маткаде с условием

  • автор:

Как задать функцию в маткаде с условием

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

  • Add Line – создает и при необходимости расширяет жирную вертикальную линию, справа от которой в шаблонах задается запись программного блока;
  • – символ локального присваивания (в теле модуля);
  • if – условный оператор;
  • for – оператор задания цикла с фиксированным числом повторений;
  • while – оператор задания цикла, действующего до тех пор, пока выполняется некоторое условие;
  • otherwise – оператор иного выбора (обычно применяется с if);
  • break – оператор прерывания;
  • continue – оператор продолжения;
  • return – оператор возврата;
  • on error – оператор обработки ошибок.

Оператор добавления линии Add Line выполняет функции расширения программного блока. Расширение фиксируется удлинением вертикальной черты программных блоков или их древовидным расширением. Благодаря этому, в принципе, можно создавать сколь угодно большие программы.

Оператор внутреннего присваивания выполняет функции внутреннего, локального присваивания. Например, выражение присваивает переменной x значение 123. Локальный характер присваивания означает, что такое значение х сохраняет только в теле программы. За пределами тела программы значение переменной х может быть неопределенным, либо равно значению, которое задается вне программного блока операторами локального := или глобального присваивания.

Условный оператор if является оператором для создания условных выражений. Он задается в виде:

Если условие выполняется, то возвращается значение выражения. Совместно с этим оператором часто используются операторы прерывания break и иного выбора otherwise.

Оператор цикла for служит для организации циклов с заданным числом повторений. Он записывается в виде:

Эта запись означает, что выражение, помешенное в расположенный ниже заменитель, будет выполняться для значений переменной Var, меняющихся от Nmin до Nmax с шагом +1. Переменную счетчика Var можно использовать в исполняемом выражении.

Оператор цикла while служит для организации циклов, действующих до тех пор, пока выполняется некоторое условие. Этот оператор записывается в виде:

Выполняемое выражение записывается на место расположенного ниже заполнителя.

Оператор иного выбора otherwise обычно используется совместно с оператором if . Это поясняет следующая программная конструкция:

Здесь f(x) получает значение 1, если х>0, и –1 во всех остальных случаях.

Оператор прерывания break вызывает прерывание работы программы всякий раз, как он встречается. Чаще всего он используется совместно с оператором условного выражения if и операторами циклов while и for, обеспечивая переход в конец тела цикла.

Оператор продолжения continue используется для продолжения работы после прерывания программы. Он также чаще всего используется совместно с операторами задания циклов while и for, обеспечивая возвращение в точку прерывания и продолжение вычислений.

Оператор возвращения return прерывает выполнение программы и возвращает значение операнда, стоящего следом за ним. Например, конструкция

будет возвращать значение 0 при любом х < 0.

Оператор и функция обработки ошибок позволяет создавать конструкции обработчиков ошибок. Этот оператор задается в виде:

Здесь если при выполнении Выражения_1 возникает ошибка, то выполняется Выражение_2. Для обработки ошибок полезна также функция error(S), которая, будучи помешенной в программный модуль, при возникновении ошибки выводит всплывающую подсказку с надписью, хранящейся в символьной переменной S.

Программный модуль, в сущности, является функцией, но описанной с применением упомянутых программных средств. Она возвращает значение, определяемое последним оператором (если не предусмотрено иное с помощью оператора return). Это значит, что после такого модуля, выделенного как целый блок, можно поставить знак равенства для вывода результата его работы (см. рис. 1.18). В блоке могут содержаться любые операторы и функции входного языка системы. Для передачи в блок значений переменных можно использовать переменные документа, которые ведут себя в блоке как глобальные переменные.

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

Как задать функцию в маткаде с условием

Функции в Mathcad

Произвольные зависимости между входными и выходными параметрами задаются при помощи функций. Функции принимают набор параметров и возвращают значение, скалярное или векторное (матричное). В формулах рабочего листа можно использовать стандартные встроенные функции, а также функции, определенные пользователем.

Чтобы использовать функцию в выражении, ее следует вызвать по имени, указав в значения фактических входных параметров в скобках после имени функции. Имена простейших математических функций можно ввести с панели инструментов Калькулятор (Arithmetic). Информацию о других функциях можно почерпнуть в справочной системе или в приложении. Вставить в выражение стандартную функцию можно при помощи команды Вставка > Функция (Insert > Function). В диалоговом окне (рис. 1.9) слева выбирается категория, к которой относится функция, а справа – конкретная функция. В нижней части окна выдается информация о выбранной функции. При вводе функции через это диалоговое окно автоматически добавляются скобки и заполнители для значений параметров.

Пользовательские функции должны быть сначала определены. Определение задается при помощи оператора присваивания. В левой части указывается имя пользовательской функции и, в скобках, формальные параметры – переменные, от которых она зависит. Справа от знака присваивания эти переменные должны использоваться в выражении, например

Если для вычисления пользовательской функции необходимо выполнить несколько операций, то в теле функции формируют необходимое число строк с помощью кнопки Add line панели Программирование и в появившиеся заполнители помещают формулы. Отметим, что в операторах тогда допустима операция внутреннего присваивания, задаваемая стрелкой, а все вычисленные подобным образом переменные являются локальными и за пределами функции будут не определенны. Так, на рис. 1.10 функция fct вычисляется за три действия, а переменные с2k и c3k будут видимыми только внутри функции.

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

Как задать функцию в маткаде с условием

2. Чтобы добавить оператор if , на вкладке Математика (Math) в группе Операторы и символы (Operators and Symbols) щелкните Программирование (Programming) . Откроется список операторов программирования. Щелкните if .

Можно ввести имя оператора программирования, например » if «, а затем нажать клавиши Ctrl+J, чтобы преобразовать имя в оператор программирования со всеми местозаполнителями.

3. При условии, что значение var равняется “BLACK” , функция возвращает значение “WHITE” , как показано ниже. Чтобы добавить логический оператор для сравнения, на вкладке Математика (Math) в группе Операторы и символы (Operators and Symbols) щелкните Операторы (Operators) . Откроется список операторов. Щелкните = Равно (Equal To) .

4. Чтобы добавить другой оператор if , установите курсор, как показано ниже, и нажмите клавишу «Ввод».

Если курсор находится сразу после элемента “WHITE” , то после нажатия клавиши ВВОД PTC Mathcad добавляет строку в блок if .

Как задать функцию в маткаде с условием

1. Чтобы присвоить переменной имя θ , введите q и нажмите клавиши Ctrl+G. Чтобы задать значение переменной θ , вставьте оператор определения и введите число 67. На вкладке Математика (Math) в группе ЕИ (Units) щелкните Единица (Unit) . Откроется список Единица (Unit) . В категории Угол (Angle) щелкните символ «°» (градус).

Символ градуса можно вставить по-другому — ввести deg после 67 . При вычислении в градусах результат возвращается все равно в радианах:

2. Вычислите значение встроенной функции синус для этого угла. Чтобы просмотреть список встроенных функций, на вкладке Функции (Functions) в группе Функции (Functions) щелкните Все функции (All Functions) .

3. Выберите область формул. На вкладке Расчет (Calculation) в группе Элементы управления (Controls) щелкните Отключить область (Disable Region) . Отключенная область формул станет серой.

4. Измените определение угла на π/6 . Отключенная область не будет пересчитана после изменения угла.

5. Выберите отключенную область и щелкните Отключить область (Disable Region) , чтобы изменить состояние переключателя на обратное. Результат будет пересчитан.

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

Определение новых функций и проверка единиц измерения

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

1. Вставьте имя функции и список ее аргументов.

2. Вставьте оператор определения и введите следующее выражение:

В этой функции cm обозначает сантиметры, а x и y являются аргументами функции f . Можно определить одну функцию с помощью другой, если их аргументы совпадают. Здесь аргументом функции sin является x , и x — тоже аргумент функции f .

3. Вычислите функцию f при x=π/2 и y=2kg :

Появится сообщение об ошибке. Приложение PTC Mathcad выполнило проверку единиц измерения в функции и обнаружило, что единицы измерения x и y несовместимы с определением функции (значение x должно быть углом, а y — длиной).

4. Вычислите функцию f при x=π/5 и y=3in .

Результат будет возвращен в метрах, потому что по умолчанию принята система единиц СИ. Чтобы сменить систему единиц измерения, на вкладке Математика (Math) в группе ЕИ (Units) выберите новую систему в списке Система единиц измерения (Unit System) .

Выполнение
Перед тем как перейти к следующему упражнению, вычислите площадь треугольника.

• Общая формула для площади треугольника имеет вид 1/2 ∙ a ∙ b ∙ sin(θ) , где a и b — длины двух сторон треугольника, а θ — угол между ними. Определим функцию 3 аргументов, вычисляющую площадь треугольника.

• Треугольник имеет две стороны 5mm и 1.5cm и угол между ними 32° . Определите эти переменные. Убедитесь, что введены все единицы измерения, включая градус угла.

• Вычислите функцию для данного треугольника и проверьте, что полученная площадь равна 0.199cm 2 . Результат возвращается в m 2 , поэтому необходимо преобразовать единицы измерения в cm 2 .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *