Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Простейшие способы ввода–вывода информации

Читайте также:
  1. II. Корыстные источники информации
  2. II. СПОСОБЫ РАСЧЕТА ТОЧКИ ОТДЕЛЕНИЯ ПАРАШЮТИСТОВ ОТ ВОЗДУШНОГО СУДНА.
  3. PCI DSS v 2.0октябрь 2010 г.- стандарт защиты информации в индустрии платежных карт
  4. Альтернативные способы практики
  5. Антибиотики формы выпуска и способы применения
  6. Аппаратура первичной обработки информации (АПОИ)
  7. Архивирование данных об источниках информации

Во встроенном языке Matlab’а нет явных операторов ввода–вывода данных в командное окно. Проблема ввода данных в нём решается оператором присваивания и использованием системных констант. К системным константам относятся:

- Pi – число p = 3.1415…;

- i или j – мнимая единица ;

- NaN – неопределенность вида 0/0;

- Inf – бесконечность типа 1/0;

- ans – идентификатор результата последней операции

и другие.

Вывод данных осуществляется еще проще. Для этого необходимо после математического выражения не ставить точку с запятой «;».

Как известно, в Matlab’е при вычислениях в числе сохраняется 15 цифр. Однако при выводе результатов вычислений в командное окно по умолчанию выдаются числа с 4 цифрами после десятичной точки в действительной форме. Эту форму вывода данных можно менять. Для этого в программе перед выводимой величиной следует использовать команду format name, где name – имя формата, которое для числовых данных имеет следующие значения:

§ short – короткое представление числа в фиксированном формате из 5-ти знаков и десятичной точки;

§ short е – короткое представление числа в экспоненциальной форме с 5-ю знаками мантиссы и 3-я знаками порядка;

§ long – длинное представление числа в фиксированном формате из 15-ти знаков и десятичной точки;

§ long е – длинное представление числа в экспоненциальной форме с 15-ю знаками мантиссы и 3-я знаками порядка.

В качестве примера можно привести фрагменты программы, организующие вывод компонент вектора из двух элементов. При командах

format short

x = [5/3 1.2345e-7]

будет выведено

1.6667 0.0000

При

format short e

x = [5/3 1.2345e-7]

будет выведено

1.6667E+000 1.2345E–007

При

format long

x = [5/3 1.2345e-7]

будет выведено

1.66666666666667 0.00000012345000

При

format long e

x = [5/3 1.2345e-7]

будет выведено

1.66666666666667E+000 1.2345000000000E-007

Иные способы ввода и вывода информаци будут описаны ниже.

Векторы и матрицы

Matlab изначально был предназначен для выполнения вычислений с векторами и матрицами. Поэтому по умолчанию предполагается, что каждая переменная, в том числе и скалярная – это вектор или матрица. Например, если в программе задано х=1, то это значит, что переменная х – вектор с одним элементом, равным 1. Если надо задать вектор из трех элементов 2.87, 3.62 и 4.12, то их значения надо перечислить в квадратных скобках, разделяя пробелами, например

>>V = [2.87 3.62 4.12].

В данном случае задан вектор–строка. Если разделить элементы точкой с запятой, то получим вектор–столбец

>>V = [2.87; 3.62; 4.12].

Матрицы в Matlab’е задаются построчно. Для разграничения строк используется точка с запятой «;». Например, для задания матрицы

следует записать

>>Т = [2 -1 4 2; 3 5 -1 4; -2 8 0 -1].

Для указания отдельного элемента вектора или матрицы используются их индексация. Например, если элементу Т(i,j) надо присвоить новое значение х, то используют оператор присваивания вида

>>Т(3,2) = х;

Аналогично организуется обращение к элементам матрицы, например

>>z=Т(3,2)^2+2;

Наряду с операциями над отдельными элементами матриц и векторов Matlab позволяет выполнять арифметические операции сразу над всеми элементами. Для этого перед знаком операции ставится точка (см. табл.1).

Имеются также ряд особых функций для задания векторов и матриц. Следует отметить функции ones и zeros. Функция ones создает матрицу или вектор с единичными элементами

® >> а = ones(3,2)

Функция zeros создает массив с нулевыми элементами

® >> B = zeros(3,4)

Следует отметить одну особенность вывода матриц в командное окно. Если элементы каждой строки матрицы не помещаются в командное окно, то Matlab выводит подзаголовок каждой строки, в котором указывает номера её элементов. Так вектор из 11-ти элементов будет выведен следующим образом

y =

Columns 1 through 7

1.0000 1.0000 1.2397 1.7126 1.9835 1.6161 1.2249

Columns 8 through 11

0.9708 0.8441 0.7278 0.6613

Оператор двоеточие «:»

При программировании бывает необходимо формирование числовых последовательностей разного вида. В частности, они требуются для создания векторов или значений аргумента х при построении графиков. В Matlab’е для этого используется оператор двоеточие «, который представляется следующим образом:

х= Начальное_значение:Шаг:Конечное_значение;

Эта конструкция создает возрастающую арифметическую последовательность чисел, которая начинается с начального значения, изменяется на заданный шаг и завершается конечным значением. Эти значения записываются в память ЭВМ в виде массива. Если шаг последовательности не задан, то он принимает значение 1. Если конечное значение указано меньшим, чем начальное значение, то выдается сообщение об ошибке.

Оператор разветвления if

Условный оператор if в Matlab’е записывается в общем виде следующим образом

if «логическое выражение»

Операторы 1

elseif «логическое выражение»

Операторы 2

else

Операторы 3

end;

Эта конструкция имеет несколько частных вариантов:

if «логическое выражение»

Операторы 1

end;

или

if «логическое выражение»

Операторы 1

else

Операторы 2

end;

В запись Операторы могут входить один или несколько операторов. В последнем случае они разделяются символами «,» (запятой) или «;» (точкой с запятой).

Простое логическое выражение в операторе if имеет следующую структуру

Выражение 1 «оператор отношения» Выражение 2

где операторы отношения описаны в табл.2. Примером записи одного из вариантов оператора if может служить следующая конструкция

if x>=y^2+1

z = sqrt(x^2 + y^2);

t = 1/(x + y^2);

else

z = 0;

t = 0;

end;

Из простых логических выражения могут создаваться сложные с применением логических операций, приведённых в табл.3. Например

if or(and(x>y^2,x<2),x>=4)

Если логическое выражение в операторе if принимает значение 1 (true – истина), то выполняются операторы, следующие за ним. В противном случае, когда логическое выражение принимает значение 0 (false – ложь), операторы, следующие за логическим условием, не выполняются.

Оператор end указывает на конец зоны действия условного оператора if.

Операторы циклов

В Matlab’е существует три типа операторов цикла. Один из них – оператор for…end используется для организации цикла с фиксированным числом повторений. Он имеет вид:

for x = выражение

Операторы

end;

Здесь x – счетчик цикла, в качестве которого может быть любая переменная, обычно это i, j, k, l, m и так далее. Выражение в этом операторе имеет структуру

начальное значение: шаг: конечное значение

Возможна запись в виде

начальное значение: конечное значение

тогда шаг = 1.

Список операторов завершается ключевым словом end, ограничивающим зону действия оператора for.

С помощью оператора for можно организовывать вложенные циклы, например

for i = 1: 3

for j = 1: 3

a(i,j) = i*j;

end;

end;

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

.

Вторым оператором цикла является конструкция типа while…end. Она имеет вид

while «логическое выражение»

Операторы

end;

Её операторы выполняются до тех пор, пока выполняется условие, заданное логическим выражением.

Здесь следует упомянуть операторы continue и break. Оператор continue передает управление в следующую итерацию цикла, пропуская операции, которые записаны за ним, а оператор break используется для досрочного прерывания цикла.


Дата добавления: 2015-07-08; просмотров: 92 | Нарушение авторских прав


Читайте в этой же книге: Метод простых итераций | О выборе метода решения систем уравнений | Контрольные задания | Кусочно-линейная интерполяция | Справочная информация | Усовершенствованный метод Эйлера | Оценка погрешностей методов | Справочная информация | Усовершенствованный метод Эйлера | Оценка погрешностей методов |
<== предыдущая страница | следующая страница ==>
Контрольные задания| Вывод информации в файл

mybiblioteka.su - 2015-2024 год. (0.011 сек.)