Раздел: Документация
0 ... 20 21 22 23 24 25 26 ... 365 NameSizeBytes Class qs441x416 single array Попытка выполнить арифметические операции над целыми числами разных типов приводит к ошибке: >> q31 = q3 + ql ??? Error using ==> plus Integers can only be combined with integers of the same class, or scalar doubles. Более того, при преобразовании целого числа, когда для точного представления не хватает отводимой памяти, получается максимальное число для данного типа (т. е. неверный результат) без предупреждения об этом: » wl = 34567; » rl = intS(wl) rl = 127 » tl = intl6(wl) tl = 32767 Поэтому применение целых чисел, имеющих меньшую точность представления, ограничено. Вернемся к работе с векторами и матрицами, используя принятое по умолчанию представление чисел double. Из нескольких вектор-столбцов можно составить один, используя квадратные скобки и разделяя исходные вектор-столбцы точкой с запятой:
Для сцепления вектор-строк также применяются квадратные скобки, но сцепляемые вектор-строки отделяются пробелами или запятыми: » vl = [pi pi/2]; » v2 = [pi/3 pi/4 pi/5]; » v = [vl v2] v = 3.1416 1.5706 1.0472 0.7854 0.6283 Запоминать правила сцепления вектор-строк и вектор-столбцов не требуется, достаточно посмотреть на вектор-строку v как на блочную строку. Элементы этой блочной строки, т. е. вектор-строки vl и v2, разделены пробелом в соответствии с правилом набора вектор-строк. Аналогичное рассуждение верно и для сцепления вектор-столбцов. Для просмотра и изменения значений элементов массивов удобно использовать редактор массивов (Array Editor). Дважды щелкните мышью по имени массива v в окне Workspace или нажмите кнопку Open Selection на панели инструментов окна Workspace при положении курсора на имени массива — откроется окно редактора массивов с содержимым вектор-строки v (рис. 2.1). Имя просматриваемого массива указано в строке заголовка окна.
Рис. 2.1. Окно редактора массивов Array Editor Двойной щелчок мышью по ячейке или нажатие клавиши <F2> (как и в таблицах MS Excel) позволяет редактировать содержимое соответствующего элемента массива. Убедитесь в этом, изменяя значения элементов и выводя массив в командное окно. При заполнении пустых клеток изменяются размеры массива так, что он остается прямоугольным наименьшей размерности и содержит все определенные элементы. При этом не определенные пользователем элементы приобретают нулевое значение. Для уменьшения размеров следует использовать элемент управления Delete (в контекстном или оконном меню или на панели инструментов), а не Cut, который приводит лишь к обнулению элементов массива. Для работы с данными редактор массивов MATLAB предоставляет возможности, аналогичные MS Excel. Увеличьте длину вектор-строки v до 10, для чего выделите первые пять ее элементов, скопируйте их при помощи всплывающего меню (или кнопки Сору панели инструментов, или одноименного пункта меню Edit), сделайте текущей шестую ячейку и используйте вставку (Paste) для дублирования первых пяти элементов вектор-строки. Проверьте при помощи командного окна изменился ли вектор v. Редактор массивов позволяет просматривать значения нескольких переменных. Двойной щелчок по строке с vl в окне Workspace приводит к появлению нового окна в редакторе массивов. Каждое из окон можно сделать активным при помощи соответствующей вкладки внизу окна редактора или выбрав его название в меню Window. Кнопки в правой части панели инструментов соответствуют различным способам расположения таблиц с содержимым массивов в окне редактора Array Editor. Также редактор массивов оказывается очень полезным при отладке собственных программ (отладке программ посвящен разд. "Диалоговая отладка программ" главы 8). Обращение к элементам вектора Доступ к элементам вектора или вектор-строки осуществляется при помощи индекса, заключаемого в круглые скобки после имени массива, в котором хранится вектор. Если среди переменных рабочей среды есть массив v, определенный вектор-строкой » v = [1.3 3.6 7.4 8.2 0.9]; то для обращения, например, к четвертому элементу используется индексация: » h = v(4) h = В.2000 Указание элемента массива в левой части оператора присваивания приводит к изменению в массиве » v(2) = 555 v = 1.3000 555.0000 7.4000 6.2000 0.9000 0 ... 20 21 22 23 24 25 26 ... 365
|