Чтение данных из файла
Для чтения данных из неструктурированных файлов используется функция:
<ИМЯ> := READ(<Имя файла >),
где <ИМЯ> – это либо имя простой переменной, либо имя массива с указанным индексным выражением (т.е. элемент массива).
Необходимо помнить, что при каждом обращении к функции READ чтение данных начинается с начала файла. Поэтому для чтения большого числа данных целесообразно считать их в массив, а затем через элементы этого массива определять нужные переменные (см. пример 1.3.1).
Пример 1.3.1. Сформировать вектор
из последних элементов файла , сформированного в примере 1.2.1. Значение переменной определяется первым числом в файле . Фрагмент программы показан на рис. 1.3.1. ¦Рис. 1.3.1. Чтение данных из неструктурированного файла
Замечание 1.3.1. Рассмотренная функция чтения неструктурированного файла входила в состав более ранних версий пакета MathCAD (до версии MathCAD2000 включительно). В русифицированной версии MathCAD2001i обращение к этой функции вызывает ошибку и рекомендуется работать только с функцией чтения структурированного файла.
Для чтения данных из структурированных файлов используется функция:
<ИМЯ> := READPRN(<Имя файла >),
где <ИМЯ> – это либо имя простой переменной, либо имя массива.
При использовании этой функции необходимо помнить:
- из файла читается весь записанный массив данных;
- пустые строки и строки, содержащие ASCII-текст, при считывании игнорируются.
Пример 1.3.2. Определить выборочное математическое ожидание и дисперсию по всем элементам матрицы В, сформированной в примере 1.2.2.
Фрагмент программы представлен на рис. 1.3.2. Здесь функция mean вычисляет выборочное среднее, а функция var
– выборочную дисперсию. Обратите внимание на формирование вектора через элементы матрицы. Такой переход часто используется при обработке изображений. ¦
Рис. 1.3.2. Чтение данных из структурированного файла
Задание 1.3.1. Составить фрагмент документа, формирующий вектор V, k-я проекция которого равна выборочному среднему k-го столбца матрицы, сформированной в примере 1.2.2 и записанной в файл file_2.dat. ?
В заключение этой темы заметим, что рассмотренные функции позволяют организовать «гибкую» связь пакета MathCAD с другими вычислительными программами на уровне обмена файловыми данными.