Ошибка в маткаде в этой программе нет возвращаемого значения

  • в аргументах большинства функций;
  • в экспонентах;
  • в верхних и нижних индексах.
  • имя переменной;
  • имя переменной с верхним или нижним индексом;
  • явный вектор или матрицу;
  • имя функции с аргументами: f(x,y)
  • аргументы в функции;
  • первые два элемента области в определении интервала;
  • выражения в графике элементы во входной таблице нижние индексы в матрице.

Сообщение об ошибках в символьных вычислениях

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

Рассмотрим допустимые в MathCAD имена переменных и функций. Имена в MathCAD могут содержать любые из следующих символов:

· прописные и строчные латинские буквы;

· цифры от 0 до 9

· знак подчеркивания _

· штрих ` Это не апостроф. Находится на одной клавише с тильдой ~

· символ процента %

· Имена переменных и функций не могут включать пробелы или любые другие символы, не перечисленные выше.

MathCAD не делает различий между именами переменных и именами функций. Если определить вначале f(x), а затем переменную f, окажется невозможным использовать f(x) где-либо ниже определения f некоторые имена уже используются MathCAD для встроенных констант, единиц измерения и функций. Хотя эти имена можно переопределить, этот уничтожит их встроенные значения.

MathCAD различает в именах символы верхнего и нижнего регистра, а также различные шрифты.

Кроме того, среда MathCAD включает так называемые предопределенные переменные. MathCAD содержит 8 переменных, значения которых определены сразу после запуска программы. Они называются встроенными или предопределенными. Эти переменные имеют или общепринятое значение (например, пи или е), или используются как внутренние переменные, управляющие работой MathCAD. Эти переменные можно переопределять, например, определим е:= 2. Ниже этого определения переменная е примет в рабочем документе новое значение.

Приведем примеры некоторых встроенных переменных:

е=2.71828 – основание натурального логарифма;

Е=10^307 – машинная бесконечность;

% =0.01 – процент.

MathCAD интерпретирует все, начинающееся цифрой, как число. Цифра может сопровождаться:

· другими цифрами;

· десятичной точкой;

· цифрами после десятичной точки;

· символами h или o для шеснадцатеричных и восьмеричных чисел; символами i или j для комплексных чисел. Комплексные числа MathCAD воспринимает в форме a+bi (или a+bj). Специальные функции и операторы для работы с комплексными числами:

· Re(z) – вещественная часть числа z;

· Im(z) – мнимая часть числа z;

· Arg(z) – аргумент числа z (угол в комплексной плоскости между вещественной осью и радиус-вектором, определяемым числом z);

Одиночное число в MathCAD называют скаляром. Столбец чисел называется вектором, а прямоугольная таблица чисел — матрицей. Способы создания массива:

· заполнить массив пустых полей

· использовать дискретный аргумент

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

В системе Mathcad можно реализовать расчеты по сложным разветвленным алгоритмам или с циклическими процессами.
Это реализуется использованием встроенных программных операторов, похожих на используемые в различных языках
программирования (рис. 1.17). Как видно на рис. 1.18 и 1.19, где вычисляется факториал, программный модуль в системе Malhcad
превратился в самостоятельный блок, причем при необходимости выполнить несколько операторов, их объединяют жирной
вертикальной чертой.

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

Набор программных операторов для создания программных модулей ограничен и содержит следующие элементы:

  • 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 обычно используется совместно с
оператором . Это поясняет следующая программная конструкция:

Ошибка в маткаде в этой программе нет возвращаемого значения

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

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

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

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

Ошибка в маткаде в этой программе нет возвращаемого значения

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

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

Ошибка в маткаде в этой программе нет возвращаемого значения

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

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

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

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

В очень ранних версиях MathCAD встроенного языка программирования не было. Чтобы применять привычные операции проверки условий и организовывать циклы, приходилось изобретать причудливую смесь из встроенных функций if и until, а также комбинаций ранжированных переменных. Но надо отметить, что использование ранжированных переменных – мощный аппарат MathCAD, похожий на применение циклов в программировании. В подавляющем большинстве случаев намного удобнее организовать циклы с помощью ранжированных, чем заниматься для этого программированием.

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

Ошибка в маткаде в этой программе нет возвращаемого значения

Для вставки программного кода в документы MathCAD имеется специальная панель инструментов. Большинство кнопок этой панели выполнено в виде текстового представления операторов программирования, поэтому их смысл легко понятен. Операторы программирования могут быть введены только с этой панели, но никак не с клавиатуры (можно еще их вводить с помощью сочетаний клавиш, которые приведены в тексте всплывающей подсказки).

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

Ошибка в маткаде в этой программе нет возвращаемого значения

Для определения функции это будет выглядеть следующим образом:

Ошибка в маткаде в этой программе нет возвращаемого значения

Внутри программы можно использовать глобальные переменные документа, но изменить их значение внутри программы никак нельзя. Можно создать в программе другие переменные, доступ к которым может осуществляться только из самой программы. Эти переменные называются локальными переменными. Локальные переменные «не видны» извне. Локальная переменная создается с помощью знака локального присвоения Ошибка в маткаде в этой программе нет возвращаемого значения с панели Programming. Для оператора локального присваивания, так же как и для операторов обычного Ошибка в маткаде в этой программе нет возвращаемого значения и глобального Ошибка в маткаде в этой программе нет возвращаемого значения присваивания, можно изменить внешний вид так, чтобы он выглядел как обычный знак равенства. Для этого достаточно вызвать контекстное меню этого оператора и в нем выбрать команду View Definition As/Equal.

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

Вставить строку программного кода в уже созданную программу можно в любой момент с помощью той же самой кнопки Add Line. Для этого следует поместить на нужное место внутри программы линии ввода.

Ошибка в маткаде в этой программе нет возвращаемого значения
Ошибка в маткаде в этой программе нет возвращаемого значения
Ошибка в маткаде в этой программе нет возвращаемого значения

Ошибка в маткаде в этой программе нет возвращаемого значения
Ошибка в маткаде в этой программе нет возвращаемого значения
Ошибка в маткаде в этой программе нет возвращаемого значения

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

Проверка условий в программах.

Программы в MathCAD могут быть не только линейными, но и разветвленными. Одним из вариантов ветвления в программах является проверка условия. Условия могут проверять значения как локальных, так и глобальных переменных, а также выражений, содержащих эти переменные.

Для проверки условий в программах MathCAD служит оператор if Ошибка в маткаде в этой программе нет возвращаемого значения. В поле ввода справа нужно ввести условие. Для ввода условий служит панель Boolean. На этой панели есть кнопки, предназначенные для проверки условий Ошибка в маткаде в этой программе нет возвращаемого значения Ошибка в маткаде в этой программе нет возвращаемого значения, а также кнопки, предназначенные для вставки логических операций Ошибка в маткаде в этой программе нет возвращаемого значения (логическое отрицание, операция «и», операция «или», операция «исключающее или»). Вторые позволяют создавать сложные условия. В поле ввода слева нужно ввести строку программы, которая должна выполняться, если введенное условие истинно.

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

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

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

Ошибка в маткаде в этой программе нет возвращаемого значения

Другим очень важным элементом при создании нелинейных программ являются циклы. Циклы позволяют повторять несколько раз выполнение одного и того же программного блока. Для создания циклов в MathCAD предусмотрено два оператора for и while.

Цикл for – цикл со счетчиком.

В таких циклах создается некоторая переменная-счетчик, значение которой изменяется после каждого выполнения тела цикла. Выход из цикла происходит при достижении этой переменной заданного значения. Этот оператор вводится с панели Programming клавишей for Ошибка в маткаде в этой программе нет возвращаемого значения. В поле ввода после слова for следует указать имя переменной – счетчика. Это может быть любое имя, которое не использовалось ранее в программе. Внутри цикла можно использовать эту переменную в любых выражениях, нельзя только присваивать ей никакого значения. В поле ввода после знака Ошибка в маткаде в этой программе нет возвращаемого значения следует указать диапазон значений переменной-счетчика. Вводить диапазон в данном случае следует так же, как и при создании ранжированной переменной. Вместо диапазона в данном поле ввода можно указать имя некоторого массива (вектора или матрицы). В этом случае переменная-счетчик будет последовательно принимать значения всех элементов этого массива. Возможность перебора элементов массива не может быть реализована с помощью цикла while, поэтому именно в таких случаях цикл for и является незаменимым. В поле ввода под словом for следует ввести тело цикла.

Пример: Заполнить вектор числами от xнач до xкон с шагом h. Затем определить сумму элементов этого вектора и найти их среднее арифметическое значение.

Ошибка в маткаде в этой программе нет возвращаемого значения

Цикл while – цикл, который выполняется до тех пор, пока выполняется определенное условие.

Ошибка в маткаде в этой программе нет возвращаемого значения В поле ввода справа от слова while следует ввести условие. Это условие строится по тем же правилам, что и в операторе if. Оно будет проверяться после каждого выполнения тела цикла и в тот момент, когда условие перестанет выполняться, повторение тела цикла прекратится. В поле ввода ниже слова while следует ввести тело цикла (напомним, что для ввода нескольких строк в теле цикла надо воспользоваться кнопкой Add Line).

Пример 1: Вычислить сумму Ошибка в маткаде в этой программе нет возвращаемого значения с точностью е.

Ошибка в маткаде в этой программе нет возвращаемого значения

Пример2: Найти первый элемент, превышающий определенный порог.

Ошибка в маткаде в этой программе нет возвращаемого значения

Использование операторов break и continue.

Иногда возникает необходимость повлиять на выполнение цикла некоторым образом, например, прервать его выполнение по какому-либо условию или выполнять некоторые итерации не так, как другие. Для этого и служат операторы break и continue.

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

Пример: Выделить из массива все элементы от начала и до первого вхождения в него заданного числа.

Ошибка в маткаде в этой программе нет возвращаемого значения

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

Пример: Требуется заполнить элементы квадратной матрицы в шахматном порядке.

Ошибка в маткаде в этой программе нет возвращаемого значения

Оператор return (возврат значения).

Как мы уже указывали, результат выполнения программного модуля помещается, как правило, в последней его строке. Но можно прервать выполнение программы в любой ее точке (например, с помощью условного оператора) и выдать некоторое значение, применив оператор return. В этом случае при выполнении указанного условия значение, введенное в поле ввода после return, возвращается в качестве результата, и никакой другой код больше не выполняется. Вставляется в программу оператор return с помощью одноименной кнопки панели Programming Ошибка в маткаде в этой программе нет возвращаемого значения. Пример:

Ошибка в маткаде в этой программе нет возвращаемого значения

Система MathCAD предоставляет пользователю некоторый контроль над ошибками, которые могут возникнуть при вычислении выражений или при выполнении программ. Для этой цели служит оператор on error, который можно вставить с помощью одноименной кнопки панели Programming Ошибка в маткаде в этой программе нет возвращаемого значения. В поле ввода справа следует ввести выражение или программу, которые необходимо вычислить (известно, что это выражение может содержать ошибку при определенных значениях входных параметров). В поле ввода слева следует ввести выражение, которое будет выполнено вместо правого выражения, если при выполнении последнего возникнет ошибка. Пример: Если аргументу функции присвоено нулевое значение, то в программе возникает ошибка – деление на нуль. Но за счет оператора on error сообщение не выводится, а функции в этой точке присваивается значение, указанное слева от оператора on error – значение машинной бесконечности.

Ошибка в маткаде в этой программе нет возвращаемого значения

В поле ввода слева может быть введено текстовое выражение, сообщающее об ошибке

Ошибка в маткаде в этой программе нет возвращаемого значения

Конечно, если программа содержит только простейшие математические операции, то никаких ошибок, кроме деления на нуль или превышения наибольшего допустимого числа в ней возникнуть не может. В таких программах оператор on error используется редко. Но для более сложных программ, которые содержат функции решения дифференциальных уравнений, аппроксимации или другие сложные функции MathCAD, использование on error может избавить от многих трудностей.

Иногда может возникнуть ситуация обратная той, которая была описана выше, т.е. необходимо, чтобы при определенных условиях результатом выражения было сообщение об ошибке, хотя в действительности при этом не возникает ни одной стандартной ошибки MathCAD. Для таких случаев в MathCAD предусмотрена встроенная функция error. В качестве аргумента этой функции нужно в кавычках указать текст сообщения об ошибке, который должен быть выведен. Таким образом, если необходимо, чтобы программа возвращала ошибку при определенном условии, то следует использовать конструкцию вида: error («текст ошибки») if (условие).

Ошибка в маткаде в этой программе нет возвращаемого значения

Для того, чтобы иметь возможность нормально вводить текст на русском языке в аргумент функции error (а также во все другие функции со строками), следует изменить шрифт, который используется во встроенном стиле Constant. Для того чтобы этот стиль правильно отображал русские буквы, установите курсор на любом числе или строковом выражении в формульном блоке. При этом в поле на панели инструментов Formatting, отображающем текущий стиль, должно быть написано – Constant. Теперь выберите из раскрывающегося списка шрифтов шрифт, поддерживающий кириллицу.

1. Вычислить функцию sin(x) с точностью е.

Ошибка в маткаде в этой программе нет возвращаемого значения

2. Даны массивы А(5) и В(5). Получить массив С, в который записаны сначала элементы

массива А в порядке возрастания, а затем элементы массива В порядке убывания

Ошибка в маткаде в этой программе нет возвращаемого значения

3. По введенным значениям коэффициентов А, В, С определить корни квадратного уравнения Ошибка в маткаде в этой программе нет возвращаемого значения

Ошибка в маткаде в этой программе нет возвращаемого значения

4. Дан массив натуральных чисел В(10). Определить, есть ли в нем 4 последовательных числа (например, 1, 2, 3, 4, и т.п.). Напечатать такие группы чисел.

Ошибка в маткаде в этой программе нет возвращаемого значения

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

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