Система Mathcad: файлы данных и функции доступа к ним. Лекция №8

Содержание

Слайд 2

Возможности Mathcad по работе с файлами данных Работа с текстовыми файлами

Возможности Mathcad по работе с файлами данных

Работа с текстовыми файлами числовых

данных в формате ASCII

Работа с графическими, звуковыми файлами

Импорт-экспорт файлов других приложений: Excel, Matlab, различных СУБД, блокнота, …

Слайд 3

Работа с текстовыми файлами числовых данных Числа в файлах: целые: -1

Работа с текстовыми файлами числовых данных

Числа в файлах:
целые: -1 34 -59
вещественные,

представленные во внешнем формате с фиксированной точкой: 97.73
вещественные, представленные в экспоненциальном формате (внешнем формате с плавающей точкой): 4.51 E-4 -56.1 E5

внутреннее представление вещественных данных – с плавающей точкой!

Слайд 4

Разделители чисел в текстовых файлах В вводимых файлах: запятая, пробелы, перевод

Разделители чисел в текстовых файлах

В вводимых файлах: запятая, пробелы, перевод строки.
В

выводимых файлах: пробелы, перевод строки.
Пример допустимой строки вводимого файла: 200, 50 25.1256, 16E –2, –16.125E15
Слайд 5

Функции доступа к неструктурированным файлам данных Неструктурированные файлы –файлы, числа в

Функции доступа к неструктурированным файлам данных

Неструктурированные файлы –файлы, числа в которых

необязательно расположены в строках и столбцах.
Структурированные файлы –числа в которых расположены в строках и столбцах, т. е. файлы, содержащие матрицу.
Неструктурированные файлы могут использоваться с индексированными переменные, структурированные –нет.
:= имеет смысл «считай, загрузи, введи» или «запиши, выведи, сохрани»
Слайд 6

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

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

Слайд 7

Аргумент функций доступа к файлам данных Аргумент файл называется файловой переменной

Аргумент функций доступа к файлам данных

Аргумент файл называется файловой переменной и

представляет собой имя файла (без кавычек), с расширением или без него.
Если расширение файла не указано, то для неструктурированных файлов оно по умолчанию считается .dat, для структурированных – .prn. Эти расширения является предпочтительными.
Можно использовать расширения, отличные от .dat и .prn, но при вводе эти расширения записываются как нижний индекс. Например, вместо A.txt получим Atxt.
Не рекомендуется использовать расширение более чем из трех символов, иначе система будет искать файл по расширению из первых трех символов.
Файлы должны находиться только в текущей папке, т. е. в той папке, где находится документ Mathcad. Т. е. полное имя файла с указанием пути к нему в качестве файловой переменной использовать нельзя. При необходимости использовать файлы из других папок следует связать файловую переменную с файлом на диске с помощью окна Главное меню/ Файл /Присоединить к файлу.
Слайд 8

Особенности использования функций доступа к файлам данных Если Mathcad не может

Особенности использования функций доступа к файлам данных

Если Mathcad не может найти

файл данных, он отмечает соответствующую функцию доступа сообщением об ошибке “файл не найден”. Если Mathcad пытается прочитать файл неподходящего формата, он отмечает функцию сообщением “ошибка файла”.
Каждое новое равенство с использованием функций доступа заново открывает файл данных. При считывании данных, например, каждое новое равенство начинает читать файл с самого начала.
В одном равенстве файл может быть открыт только единожды. Это означает, что, если функция READ используется с одним аргументом-именем файла дважды в одном операторе (это возможно при использовании индексированной переменной), во второй раз READ начнет читать с того места, где закончила в первый. Поскольку READPRN читает весь файл целиком, это означает, что READPRN нельзя использовать с одним аргументом дважды в одном равенстве (в цикле) — во второй раз READPRN не останется ничего читать.
Если два равенства в рабочем документе используют WRITE или  WRITEPRN с одним аргументом, данные из второго равенства запишутся поверх данных из первого. Используйте APPEND или APPENDPRN, если нужно сохранить первую порцию данных. Эти функции дописывают новые данные к существующему файлу.
Слайд 9

Примеры чтения данных из неструктурированного файла Пример 1. В массив y

Примеры чтения данных из неструктурированного файла

Пример 1. В массив y из

файла in.dat считывается 31 значение:
N:=30
i:=0..N
yi:=READ(in)
Пример 2.
N:=READ(sizefile) из файла sizefile.dat считывается значение N
N=100
i:=1..N из файла data.dat считывается N значений в
xi:=READ(data) массив х
Слайд 10

Пример записи данных в неструктурированный файл N:=100 a:=1.75 b:=115 WRITE(sizefile):=N i:=0..N-1

Пример записи данных в неструктурированный файл

N:=100 a:=1.75 b:=115
WRITE(sizefile):=N
i:=0..N-1
yi:=a⋅i+b+rnd(i)
WRITE(data1):=yi

rnd(i) – функция, возвращает

псевдослучайное число, равномерно распределенное на интервале [0,i]
Слайд 11

Пример работы со структурированным файлом

Пример работы со структурированным файлом

Слайд 12

Импорт файлов, созданных различными приложениями Главное меню/ Вставка/ Данные 1. Выбираем формат файла

Импорт файлов, созданных различными приложениями Главное меню/ Вставка/ Данные

1. Выбираем формат

файла
Слайд 13

2. Выбираем имя файла

2. Выбираем имя файла

Слайд 14

3. Просматриваем и настраиваем файл

3. Просматриваем и настраиваем файл

Слайд 15

Результат в документе Mathcad В подготовленное место вводим имя переменной

Результат в документе Mathcad

В подготовленное место вводим имя переменной

Слайд 16

READRGB("fiie") — чтение цветного изображения; READBMP("file") — чтение изображения в оттенках

 READRGB("fiie") — чтение цветного изображения;
 READBMP("file") — чтение изображения в оттенках серого;
 WRiTERGB("fiie") — запись цветного

изображения;
 WRiTEBMP("fiie") — запись изображения в оттенках серого.
Существует также много функций преобразования файлов.
Форматы файлов: BMP, GIF,JPG, …
Независимо от формата файла, изображение хранится как матрица кодов цветов пикселей изображения.
Изображение в оттенках серого: матрица, хранящая интенсивность серого от 0 до 255.
Для цветного изображения - три матрицы:

Работа с графическими файлами

Слайд 17

Пример работы с графическими файлами Вывод изображения командой Вставка/ Рисунок

Пример работы с графическими файлами

Вывод изображения командой Вставка/ Рисунок

Слайд 18

Пример работы с графическими файлами (продолжение) Пример из книги: Ю.Е. ВОСКОБОЙНИКОВ,

Пример работы с графическими файлами (продолжение)

Пример из книги: Ю.Е. ВОСКОБОЙНИКОВ, А.Ф.

ЗАДОРОЖНЫЙ, Л.А. ЛИТВИНОВ , Ю.Г. ЧЕРНЫЙ «ОСНОВЫ ВЫЧИСЛЕНИЙ И ПРОГРАМИРОВАНИЯ В ПАКЕТЕ MATHCAD»

Изменим уровень интенсивности серого оттенка в каждом пикселе, разделив матрицу S на 2 и добавив к результату 120. Получим матрицу S1.
Создадим инверсию графического изображения в матрице S2. Для этого значение интенсивности в каждом элементе матрицы S2 вычислим как S2i,j = 255 – Si j.
Поменяем строки матрицы так, чтобы номера строк шли по убыванию с помощью функции reverse()) – матрица S3. Изображение должно перевернуться.
Проведем контрастирование изображения. Для этого все значения ниже 120 переназначим в 0, а выше в 255, т.е. оттенки будут только черные и белые. Получим матрицу S4.