русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Создание векторов и матриц


Дата добавления: 2015-06-12; просмотров: 499; Нарушение авторских прав


 

Возможен ввод векторов в виде арифметических выражений, содержащих любые встроенные функции. Например:

>> V=[2+2/(3+4),exp(5),sqrt(10)]

V =

2.2857 148.4132 3.1623

Матрицы небольших размеров удобно вводить с командной строки следующим образом.. Вначале ставится открывающая квадратная скобка. Затем элементы каждой строки матрицы набираются через пробел или запятую, а ввод строки завершается нажатием на клавишу <Enter>. При вводе последней строки в конце ставится закрывающая квадратная скобка. Если после закрывающей квадратной скобки не ставить точку с запятой для подавления вывода в командное окно, то матрица выведется в виде таблицы. Пример:

>> B=[1 3 0

-2 -2 5]

B =

1 3 0

-2 -2 5

Еще один способ формирования векторных и матричных массивов в окне рабочего пространства Workspace рассмотрен в разделе 1.9.

Если в матрице

>> M=[1 2 3 4;5 6 7 8];

надо заменить элемент

>> disp(M(2,3))

некоторым числом, например π, то это можно сделать так:

>> M(2,3)=pi

M =

1.0000 2.0000 3.0000 4.0000

5.0000 6.0000 3.1416 8.0000

Обратите внимание на то, что если операция присваивания нового значения хотя бы одному элементу матрицы не завершена точкой с запятой, матрица М целиком выводится в командное окно.

Присвоить можно и значение элементу матрицы, индексы которого превышают текущие ее размеры. В этом случае эти размеры будут соответственно увеличены, а остальные элементы такой расширенной матрицы будут заполнены нулями:

>> A=[1 2]

A =

1 2

>> A(2,3)=5

A =

1 2 0

0 0 5

Длинный вектор можно вводить частями, которые затем объединяются с помощью операции сцепления строк:

>> V1=[1 2 3];V2=[4 5 6];

>> V=[V1 V2]

V =

1 2 3 4 5 6

Для создания нового вектора из определенных в заданном порядке элементов другого вектора применяется индексация при помощи вектора. Запись в вектор W пятого, второго, первого и третьего элементов вектора V производится следующим образом:



>> ind=[5 2 1 3];

>> W=V(ind)

W =

5 2 1 3

Пусть в векторе из девяти элементов требуется заменить нулями элементы с третьго по седьмой. Эту задачу легко решить индексацией с помощью двоеточия.

Например:

>> P=[-1 0.1 2.2 3.4 5.6 3.1 6.8 9.7 5.5];

>> P(3:7)=0

P =

-1.0000 0.1000 0 0 0 0 0 9.7000 5.5000

Указание номеров элементов вектора можно использовать и при вводе векторов, последовательно добавляя новые элементы (необязательно в порядке возрастания их номеров). Команды:

>> h=10;

>> h(2)=20;

>> h(4)=40;

приводят к образованию вектора:

>> h

h =

10 20 0 40

Заметим, что для ввода первого элемента h необязательно указывать его индекс, т. к. при выполнении оператора h=10 создается вектор (массив размера один на один). Следующие операторы присваивания приводят к автоматическому увеличению длины вектора h, а пропущенные элементы (в

нашем случае h(3)) получают значение ноль.

Массивы различаются по числу размерностей или измерений: одномерные, двумерные, многомерные. Размером массива называют число элементов вдоль каждого из измерений. Размер квадратной матрицы называется ее порядком.

Введем следующие массивы A, B, V, U, a:

>> A=[1,2;3,4],B=[1 2 3;4 5 6],V=[1 2 3],U=[1;2;3],a=5

A =

1 2

3 4

B =

1 2 3

4 5 6

V =

1 2 3

U =

a =

Команда size(A) выдает число строк и столбцов матрицы A:

>> disp(size(A))

2 2

>> disp(size(B))

2 3

>> disp(size(V))

1 3

>> disp(size(U))

3 1

>> disp(size(a))

1 1

Итак, A, B, V, U, a – массивы размеров 2×2, 2×3, 1×3, 3×1, 1×1 соответственно, причем A – квадратная матрица порядка 2.

Команда ndims(A) выдает размерность массива A:

>> disp(ndims(A))

>> disp(ndims(B))

>> disp(ndims(a))

>> disp(ndims(V))

Итак, A, B, a, V – массивы размерности 2 установленных ранее размеров.

Команда length(V) выдает число элементов вектора V, т. е. его длину:

>> disp(length(V))

В MATLAB можно создавать массивы размерности и выше 2.

Пример:

>> p(1,1,2)=1

p(:,:,1) =

p(:,:,2) =

>> disp(size(p))

1 1 2

>> disp(ndims(p))

Таким образом введен массив p размерности 3 размера 1×1×2 с двумя элементами p(1,1,1) = 0 и p(1,1,2) = 1.



<== предыдущая лекция | следующая лекция ==>
Решение систем линейных уравнений | Применение команд обработки данных к векторам и матрицам


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.211 сек.