ЛАБОРАТОРНАЯ РАБОТА №15. Символьные вычисления в Mathcad. Программирование
Работа с текстовыми переменными и функциями
Несмотря на то, что основным объектом вычислений в Mathcad являются числовые значения, в программе предусмотрена возможность оперировать со строками символов. В основном, такая возможность удобна для создания интерактивных документов. Например, если введенные исходные данные не позволяют найти решение задачи, было бы приятно вывести рядом с этими данными сообщение вроде «Неверно» или более развернутое текстовое сообщение, поясняющее, какие данные можно вводить.
В Mathcad можно присваивать строковые значения переменным, массивам (векторам и функциям), а также определять пользовательские функции, предназначенные для работы с текстовыми строками.
Любое строковое значение необходимо заключать в кавычки (“”).
Например, операция присвоения строкового значения переменной будет выглядеть так:
A1:=”Да, правильно”
При этом для ввода парных (открывающихся и закрывающихся) кавычек достаточно нажать соответствующие клавиши (Shift+’, рядом с Enter) только один раз – пара кавычек будет создана автоматически, и курсор в виде синей перевернутой буквы «Т» отобразится между ними. После этого можно набирать содержимое символьной строки.
|
|
Таким же образом в Mathcad можно определить и функцию строкового аргумента. Однако следует помнить, что обычные операторы (например, сложения) неприменимы к строковым величинам.
Работа со строковыми величинами в Mathcad осуществляется при помощи набора встроенных функций, указанных в табл. 15.1. При использовании функций работы со строками следует помнить, что первый символ строки имеет позицию «0», а не «1»!
Табл. 15.1
Функция | Описание |
concat(S1,S2,S3,...) | Возвращает строку, образованную присоединением строки S2 к концу строки S1, S3 к концу S2, и т.д. |
substr(S,m,n) | Вырезает из строки S часть длиной m символов, начинающуюся с позиции n |
search(S1,SubS,m) | Возвращает позицию подстроки SubS в строке S1. Поиск подстроки начинается с позиции m строки S1. Eсли подстрока не найдена, возвращает -1 |
strlen(S) | Возвращает количество символов в строке S (длину строки) |
IsString(x) | Возвращает 1 если x является строкой, и 0 в любом другом случае |
error(S) | Возвращает строку S как ошибку Mathcad (т.е. позволяет создавать пользовательские сообщения об ошибках; удобно применять при программировании, см. ниже) |
str2num(S) | Преобразует строку S в число (имеет смысл, только если S представляет собой число в кавычках) |
str2vec(S) | Возвращает вектор из ASCII кодов, соответствующих символам строки S |
num2str(z) | Преобразует число z в строку |
vec2str(v) | Возвращает строку, образованную из символов, ASCII-коды которых являются элементами вектора v |