Файл данных MathCAD11 должен быть просто файлом в ASCII-формате. MathCAD11 читает файлы, которые состоят из чисел, отделяемых запятыми, пробелами или возвратами каретки. Ниже описаны примеры некоторых файлов, читаемых в MathCAD11, в предположении, что они записаны в ASCII-формате:
§ файл, содержащий экспериментальные данные, фиксируемые аппаратными средствами и программным обеспечением сбора данных;
§ файл, созданный выводом данных из электронной таблицы на диск;
§ столбец чисел, набитых в текстовом процессоре и сохраненных в ASCII- формате;
§ результат работы программы, написанной на языке высокого уровня;
§ данные, экспортированные из базы данных.
Числа в файлах данных могут быть целыми числами, подобными 3 или -1, числами с плавающей запятой, подобными 2.54, или иметь экспоненциальную запись, как 4.51E -4 (для 4.5 10-4). Например, следующий список чисел был бы допустимой строкой в файле данных MathCAD11:
200, 50 25.1256, 16E – 2, – 16.125E15
MathCAD11 также сохраняет данные в ASCII-файлы. Файлы данных, сохранённые MathCAD11, содержат числа, отделяемые пробелами и возвратами каретки. Документы MathCAD11 сами по себе не являются файлами данных в указанном понимании. Единственный способ создать файл данных из MathCAD11 — использование функций доступа к файлам.
Функции доступа к файлам
В MathCAD11 есть шесть функций доступа к файлам READ, WRITE, APPEND, READPRN, WRITEPRN, APPENDPRN. Их свойства:
§ Имя функции должно печататься заглавными буквами;
§ Если MathCAD11 не может найти файл данных, он отмечает соответствующую функцию доступа сообщением об ошибке “ файл не найден ”. Если MathCAD11 пытается прочитать файл неподходящего формата, он отмечает функцию сообщением “ ошибка файла ”;
§ Левая часть оператора присваивания, использующего одну из функций WRITE, APPEND, WRITEPRN, APPENDPRN, не должна больше ничего содержать;
§ Каждое новое равенство с использованием функций доступа заново открывает файл данных. При считывании данных, например, каждое новое равенство начинает читать в начале файла;
§ В одном равенстве файл может быть открыт только единожды. Это означает, что, если функция READ используется с одним аргументом-именем файла дважды в одном уравнении (это возможно при использовании дискретного аргумента), во второй раз READ начнет читать с того места, где закончилось чтение в первый раз. Поскольку READPRN читает весь файл целиком, это означает, что READPRN нельзя использовать с одним аргументом дважды в одном равенстве — во второй раз READPRN не останется ничего читать;
§ Если два равенства в рабочем документе используют WRITE или WRITEPRN с одним аргументом, данные из второго равенства запишутся поверх данных из первого. Следует использовать APPEND или APPENDPRN, если нужно сохранить первую порцию данных. Эти функции дописывают новые данные к существующему файлу.
В табл. 6.1 описаны эти шесть функций.
Таблица 6.1
Функции доступа к файлам
Функция | Значение |
READ(file) | Считывает значение из файла данных. Возвращает скаляр. Обычно используется следующим образом: v i:=READ(“ file”) |
WRITE(file) | Записывает значение в файл данных. Если файл уже существует, заменяет его на новый файл. Используется в определениях следующего вида: WRITE(file):= v i |
APPEND(file) | Дописывает значение к существующему файлу. Используется в определениях следующего вида: APPEND(file):= v i |
READPRN(file) | Читает структурированный файл данных. Возвращает матрицу. Каждая строка в файле данных становится строкой в матрице. Число элементов в каждой строке должно быть одинаковым. Обычно используется следующим образом: A: = READPRN(file) |
Окончание табл.6.1
WRITEPRN(file) | Записывает матрицу в файл данных. Каждая строка матрицы становится строкой в файле. Используется в определениях следующего вида: WRITEPRN(file):= A |
APPENDPRN(file) | Дописывает матрицу к существующему файлу. Каждая строка в матрице становится новой строкой в файле данных. Используется в определениях следующего вида: APPENDPRN(file):= A. Существующий файл должен иметь столько же столбцов, что и матрица A |