Функции доступа к файлам

В Mathcad есть шесть функций доступа к файлам READ, WRITE, APPEND, READPRN, WRITEPRN и APPENDPRN. Таблица ниже описывает эти шесть функций. В этой таблице:

· A обозначает массив (вектор или матрицу).

· vi обозначают отдельные элементы вектора v.

· file — любое допустимое имя переменной Mathcad.

· i — дискретный аргумент.

Функции Read , Write и Append могут использоваться с дискретными аргументами, остальные — нет.

Функция Значение
READ( file) Считывает значение из файла данных. Возвращает скаляр. Обычно используется следующим образом: vi :=READ( file)
WRITE( file) Записывает значение в файл данных. Если файл уже существует, заменяет его на новый файл. Должна использоваться в определениях следующего вида: WRITE( file) := vi
APPEND( file) Дописывает значение к существующему файлу. Должна использоваться в определениях следующего вида: APPEND( file) := vi
READPRN( file) Читает структурированный файл данных. Возвращает матрицу. Каждая строка в файле данных становится строкой в матрице. Число элементов в каждой строке должно быть одинаковым. Обычно используется следующим образом: A : = READPRN( file)
WRITEPRN( file) Записывает матрицу в файл данных. Каждая строка матрицы становится строкой в файле. Должна использоваться в определениях следующего вида: WRITEPRN( file) := A
APPENDPRN( file) Дописывает матрицу к существующему файлу. Каждая строка в матрице становится новой строкой в файле данных. Должна использоваться в определениях следующего вида: APPENDPRN( file) := A. Существующий файл должен иметь столько же столбцов, как и матрица A.

Их свойства:

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

· Если Mathcad не может найти файл данных, он отмечает соответствующую функцию доступа сообщением об ошибке “файл не найден”. Если Mathcad пытается прочитать файл неподходящего формата, он отмечает функцию сообщением “ошибка файла”.

· Левая часть оператора присваивания, использующего одну из функций WRITE, APPEND, WRITEPRN и APPENDPRN, не должна больше ничего содержать.

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

· В одном равенстве файл может быть открыт только единожды. Это означает, что, если функция READ используется с одним аргументом-именем файла дважды в одном уравнении (это возможно при использовании дискретного аргумента), во второй раз READ начнет читать с того места, где закончила в первый. Поскольку READPRN читает весь файл целиком, это означает, что READPRN нельзя использовать с одним аргументом дважды в одном равенстве — во второй раз READPRN не останется ничего читать.

· Если два равенства в рабочем документе используют WRITE или WRITEPRN с одним аргументом, данные из второго равенства запишутся поверх данных из первого. Используйте APPEND или APPENDPRN, если нужно сохранить первую порцию данных. Эти функции дописывают новые данные к существующему файлу.