Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_rab_MATLAB2_1.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
565.25 Кб
Скачать

Приложение. Описание алгоритмического языка matlab

Изучая алгоритмический язык ПАСКАЛЬ, мы придерживались точки зрения, что главное в программировании - это анализ задачи, выбор структур данных и разработка алгоритма. Кодирование на алгоритмическом языке является трудоемкой рутинной работой, но не содержит принципиальных трудностей. Выбор языка программирования (среди языков, ориентированных на решение определенного класса задач) не имеет решающего значения. Различия в пра­вилах построения фраз языка не являются принципиальными, освое­ние этих правил - дело практики, а приверженность программиста к ка­кому-то алгоритмическому языку обычно является следствием мно­голетней привычки. Используя этот подход, мы будем изучать язык программирования MATLAB, учитывая, что Вы умеете программировать на ПАСКАЛЕ.

П.1. Имена в matlab

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

Переменные, как правило, не объявляются. Тип и размер переменных определя­ются присваиваемыми значениями и могут из­меняться в процессе выполнения программы. В таблице П.1 приведены некоторые функции, возвращаю­щие специальные величины, которые могут быть полезны при работе в MATLAB. Эти имена (в том числе i и j) не стоит использовать для других це­лей.

Таблица П.1. Специальные величины и некоторые функции

Функция

Возвращаемое значение

ans

самый последний результат (переменная). Если вы не присвоили значение выражения какой-нибудь переменной, то MATLAB автоматически сохранит результат в ans

eps

Относительная погрешность при вычислениях с плавающей точкой

realmax

Максимальное вещественное значение

realmin

Минимальное вещественное значение

pi

3.1415926535897...

i, j

Мнимая единица

inf

Бесконечность – результат деления n/0, если n не является комплексным числом и n0

NaN

Not-a-Number – не число. В том числе выражения вида 0/0, inf/inf и n/0 при комплексном n.

version

версия MATLAB

abs(x)

абсолютная величина x

atan(x)

arctg(x)

exp(x)

ex

log(x)

натуральный логарифм x

sin(x)

sin(x)

cos(x)

cos(x)

tan(x)

tg(x)

П.2. Типы данных

MATLAB имеет 15 основных типов данных. Каждый тип явля­ется массивом. Основные типы показаны жирным шрифтом на диаграмме рис. П.1.

Целые типы могут быть знаковыми или беззнаковыми, название беззнаковых типов начинается с латинской буквы u (от unsigned - англ. беззнаковый). Целое число, на которое оканчивается название типа, показывает, сколько байтов занимает одно значение этого типа. Естественно, чем большая память отводится на значение, тем шире диапазон его изменения.

MATLAB имеет два вещественных типа – single и double. Тип single характеризуется меньшей точностью представления чисел и меньшим диапазон чисел, чем double; соответственно, значение single занимает меньше памяти. Данные типа double имеют точность приблизительно 16 значащих десятичных цифр и диапазон изменения приблизительно от 10-308 до 10+308.

Тип double является основным типом MATLAB. Он принимается по умолчанию для числовых переменных. Переход к другим типам (например, int8) иллюстрируется рис. П.2. Все вычисления в MATLAB выполняются над переменными типа double. Остальные числовые типы используются для компактного хранения данных.

Манипуляторы функций (handle) имеют такое же назначение, как и процедуры-параметры ПАСКАЛЯ. Они рассматриваются в лабораторной работе №3.

Т ип структура (structure) подобен типу запись в ПАСКАЛЕ. Тип cell не имеет аналога в Паскале; он представляет собой массив, элементом которого является другой массив. Эти два типа, а также два дополнительных типа (классы пользовательские и java) мы рассматривать не будем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]