Как сделать чтобы матлаб округлял числа

Добавил пользователь Валентин П.
Обновлено: 10.09.2024

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

Существуют встроенные тригонометрические и гиперболические функции: sin(x), cos(x), tan(x), cot(x), asin(x), acos(x), atan(x), acot(x), sinh(x) и т.д. Аргументы этих функций (в следующих версиях, начиная с версии 7.0) могут задаваться в радианах и градусах. У функций в градусной мере после названия добавляется буква d. sin(x) – аргумент в радианах, а sind(x) – аргумент в градусах.

Некоторые часто используемые математические функции:

· exp(x)–экспонента числа x;

· log(x)– натуральный логарифм;

· log10(x)– десятичный логарифм;

· sqrt(x)– квадратный корень;

· abs(x)– абсолютное значение x;

· mod(x, y)– остаток от целочисленного деления с учетом знака;

· rem(x, y)– остаток от целочисленного деления без учета знака;

· real(z)– вещественная часть комплексного числа;

· imag(z)– мнимая часть комплексного числа;

· round(x)– округление до ближайшего целого.

Более полный список основных математических функций MatLab:

sqrt(x) вычисление квадратного корня
exp(x) возведение в степень числа e
pow2(x) возведение в степень числа 2
log(x) вычисление натурального логарифма
log10(x) вычисление десятичного логарифма
log2(x) вычисление логарифма по основанию 2
sin(x) синус угла x, заданного в радианах
cos(x) косинус угла x, заданного в радианах
tan(x) тангенс угла x, заданного в радианах
cot(x) котангенс угла x, заданного в радианах
asin(x) арксинус
acos(x) арккосинус
atan(x) арктангенс
pi число пи
round(x) округление до ближайшего целого
fix(x) усечение дробной части числа
floor(x) округление до меньшего целого
ceil(x) округление до большего целого
mod(x,y) остаток от деления с учётом знака
sign(x) знак числа
factor(x) разложение числа на простые множители
isprime(x) истинно, если число простое
rand генерация псевдослучайного числа с равномерным законом распределения
randn генерация псевдослучайного числа с нормальным законом распределения
abs(x) вычисление модуля числа

С использованием вышеупомянутых функций, записать и сосчитать значение арифметического выражения:

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

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

res=(3*cos(x^3)^2-sin(x-pi/3))/(log(abs(y))+exp (sqrt (x+1))/(2*x))*1E6

Для эффективной работы с большими наборами данных или при необходимости многократных вычислений рассмотренных средств недостаточно. В ML существует возможность записать последовательность команд в файл, сохранить его, дать ему имя и выполнить, набрав в командной строке имя файла. Это можно сделать во встроенном редакторе системы. Такие файлы называются файлами-сценариями или скрипт-файлами. При сохранении они автоматически получают расширение системы – .m.

Файлы-программы (их называют скриптами или сценариями) являются самым простым типом m-файлов. Script-файл состоит из последовательности команд, не содержит заголовка, а также входных и выходных параметров. Все объекты, используемые внутри script-файла, считаются глобальными. Если в рабочем пространстве есть данные, то внутри script-файла их можно использовать, а по окончании его выполнения использовать данные, созданные с его помощью. Такие файлы используются для автоматизации выполнения большого набора инструкций. Их текст набирают в окне встроенного редактора ML.

Перед запуском программы на выполнение необходимо установить каталог, содержащий скрипт-файл, в качестве текущего. Запуск файла на выполнение можно осуществить двумя способами: из окна редактора и из командного окна. Для выполнения файла-программы достаточно в командной строке указать имя этого скрипта.

Для запуска программы на выполнение из окна редактора надо выбрать пункт меню Debug, Run или нажать функциональную клавишу F5, или выбрать соответствующую пиктограмму на панели инструментов. Выполнить программу, уже сохраненную на диске, можно из командного окна ML, просто набрав имя файла без расширения.


Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой.

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


Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого.


Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни.

MatLab содержит в себе все распространенные математические функции, которые доступны по их имени при реализации алгоритмов. Например, функция sqrt() позволяет вычислять квадрат числа и может быть использована в программе следующим образом:

Аналогичным образом вызываются и все другие математические функции, представленные в табл. 1.2.

Таблица 1.2. Основные математические функции MatLab

sqrt(x) вычисление квадратного корня
exp(x) возведение в степень числа e
pow2(x) возведение в степень числа 2
log(x) вычисление натурального логарифма
log10(x) вычисление десятичного логарифма
log2(x) вычисление логарифма по основанию 2
sin(x) синус угла x, заданного в радианах
cos(x) косинус угла x, заданного в радианах
tan(x) тангенс угла x, заданного в радианах
cot(x) котангенс угла x, заданного в радианах
asin(x) арксинус
acos(x) арккосинус
atan(x) арктангенс
pi число пи
round(x) округление до ближайшего целого
fix(x) усечение дробной части числа
floor(x) округление до меньшего целого
ceil(x) округление до большего целого
mod(x) остаток от деления с учётом знака
sign(x) знак числа
factor(x) разложение числа на простые множители
isprime(x) истинно, если число простое
rand генерация псевдослучайного числа с равномерным законом распределения
randn генерация псевдослучайного числа с нормальным законом распределения
abs(x) вычисление модуля числа

Почти все элементарные функции допускают вычисления и с комплексными аргументами. Например:

res = sin(2+3i)*atan(4i)/(1 — 6i); % res = -1.8009 — 1.9190i

Ниже показан пример задания вектора с именем a, и содержащий значения 1, 2, 3, 4:

a = [1 2 3 4]; % вектор-строка

Для доступа к тому или иному элементу вектора используется следующая конструкция языка:

disp( a(1) ); % отображение значения 1-го элемента вектора
disp( a(2) ); % отображение значения 2-го элемента вектора
disp( a(3) ); % отображение значения 3-го элемента вектора
disp( a(4) ); % отображение значения 4-го элемента вектора

т.е. нужно указать имя вектора и в круглых скобках написать номер индекса элемента, с которым предполагается работать. Например, для изменения значения 2-го элемента массива на 10 достаточно записать

a(2) = 10; % изменение значения 2-го элемента на 10

Часто возникает необходимость определения общего числа элементов в векторе, т.е. определения его размера. Это можно сделать, воспользовавшись функцией length() следующим образом:

N = length(a); % (N=4) число элементов массива а

Если требуется задать вектор-столбец, то это можно сделать так

a = [1; 2; 3; 4]; % вектор-столбец

b = [1 2 3 4]’; % вектор-столбец

при этом доступ к элементам векторов осуществляется также как и для векторов-строк.

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

a = [1 2 3 4]; % начальный вектор a = [1 2 3 4]
b = [a 5 6]; % второй вектор b = [1 2 3 4 5 6]

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

a = [a 5]; % увеличение вектора а на один элемент

Недостатком описанного способа задания (инициализации) векторов является сложность определения векторов больших размеров, состоящих, например, из 100 или 1000 элементов. Чтобы решить данную задачу, в MatLab существуют функции инициализации векторов нулями, единицами или случайными значениями:

a1 = zeros(1, 100); % вектор-строка, 100 элементов с
% нулевыми значениями
a2 = zeros(100, 1); % вектор-столбец, 100 элементов с
% нулевыми значениями
a3 = ones(1, 1000); % вектор-строка, 1000 элементов с
% единичными значениями
a4 = ones(1000, 1); % вектор-столбец, 1000 элементов с
% единичными значениями
a5 = rand(1000, 1); % вектор-столбец, 1000 элементов со
% случайными значениями

Матрицы в MatLab задаются аналогично векторам с той лишь разницей, что указываются обе размерности. Приведем пример инициализации единичной матрицы размером 3х3:

E = [1 0 0; 0 1 0; 0 01]; % единичная матрица 3х3

E = [1 0 0
0 1 0
0 0 1]; % единичная матрица 3х3

Аналогичным образом можно задавать любые другие матрицы, а также использовать приведенные выше функции zeros(), ones() и rand(), например:

A1 = zeros(10,10); % нулевая матрица 10х10 элементов

A2 = zeros(10); % нулевая матрица 10х10 элементов
A3 = ones(5); % матрица 5х5, состоящая из единиц
A4 = rand(100); % матрица 100х100, из случайных чисел

Для доступа к элементам матрицы применяется такой же синтаксис как и для векторов, но с указанием строки и столбца где находится требуемый элемент:

A = [1 2 3;4 5 6;7 8 9]; % матрица 3х3
disp( A(2,1) ); % вывод на экран элемента, стоящего во
% второй строке первого столбца, т.е. 4
disp( A(1,2) ); % вывод на экран элемента, стоящего в
% первой строке второго столбца, т.е. 2

Также возможны операции выделения указанной части матрицы, например:

B1 = A(:,1); % B1 = [1; 4; 7] – выделение первого столбца
B2 = A(2,:); % B2 = [1 2 3] – выделение первой строки
B3 = A(1:2,2:3); % B3 = [2 3; 5 6] – выделение первых двух
% строк и 2-го и 3-го столбцов матрицы А.

Размерность любой матрицы или вектора в MatLab можно определить с помощью функции size(), которая возвращает число строк и столбцов переменной, указанной в качестве аргумента:

a = 5; % переменная а
A = [1 2 3]; % вектор-строка
B = [1 2 3; 4 5 6]; % матрица 2х3
size(a) % 1х1
size(A) % 1х3
size(B) % 2х3

1 -е занятие по MATLAB

ЛАБОРАТОРНАЯ РАБОТА №1

I . Основные вычислительные процедуры системы MATLAB

1. Операции сложения, вычитания с присвоением и без присвоения результата (+, -).

2. Операции умножения, деления (*, /).

3. Возведение в степень ( ^ ) .

4. Извлечение из квадратного корня ( sqrt ): sqrt (16+9)

5. Повторение действий, повторение с измененными параметрами и функциями.

6. Невыполняемый комментарий — %

7. Задание ряда чисел с заданным шагом и по умолчанию: t=(0:0.5:7)' % В виде столбца

8. Задание матриц (например: a = [1 2 3;4 5 6]):

9. Матричные операции:

— сложение, вычитание (+, -) ;

— умножение (*) ;

— обращение (inv) ;

— возведение в степень ( ^ ) ;

— транспонирование ( ' ) .

— c оздание нижней треугольной матрицы А: tril (А).

— c оздание верхней треугольной матрицы А: triu (А).

3/4 вращение матрицы А относительно вертикальной оси: fliplr ( A ).

3/4 вращение матрицы А относительно горизонтальной оси: flipud ( A ).

3/4 поворот матрицы А на 90 0 против часовой стрелки: rot 90( A ).

3/4 поворот матрицы А на 90 0 по часовой стрелке: rot 90( A ,-1).

3/4 поворот матрицы А на кратное 90 0 значение: rot 90( A , k ), где k = ± 1, ± 2, . . . — множитель, на который умножается угол 90 0 .

3/4 п.п. вращения и поворота выполнить для квадратных и прямоугольных матриц.

3/4 формирование единичной матрицы заданного размера n : eye ( n ).

3/4 формирование единичной матрицы по размеру данной квадратной матрицы А: eye ( size ( A )).

3/4 матрица единиц данного размера n ? m : ones ( n , m ). Для создания квадратной матрицы: ones ( n ).

3/4 матрица единиц по размеру заданной матрицы А: ones ( size ( A )).

3/4 матрица нулей данного размера n ? m : zeros ( n , m ). Для создания квадратной матрицы: zeros ( n ).

3/4 матрица нулей по размеру заданной матрицы А: zeros ( size ( A )).

3/4 матрица Паскаля данного размера n : pascal ( n ). Матрица Паскаля является положительно-определенной.

3/4 извлечение диагонали заданной матрицы А: diag ( A ).

3/4 вычисление следа матрицы А: trace ( A ).

3/4 вычисление следа матрицы А через функции sum и diag : sum ( diag ( A )).

3/4 магический квадрат размера n ( n >2): magic ( n ).

3/4 проанализировать магический квадрат с помощью функций MATLAB : просуммировать элементы каких-либо строк или столбцов, найти след магического квадрата.

3/4 создание диагональной матрицы по заданной матрице А: diag ( diag ( A )).

3/4 создание диагональной матрицы по заданному вектору-столбцу Р: diag ( P ).

3/4 создание диагональной матрицы по заданному вектору-строке N : diag ( N ).

3/4 создание диагональной матрицы по заданному вектору или матрице, набираемым в поле аргумента функции diag .

3/4 собственные числа действительной или комплексной матрицы А: eig ( A ).

3/4 выделение строк или столбцов матрицы: A = [1 2 3;4 5 6]; A (:,2:3) — 2-й и 3-й столбцы

3/4 Задание матриц по случайному равномерному закону — rand (например, rand (3,4))

3/4 Задание матриц по случайному нормальному закону — randn (например, randn (2,5))

3/4 Получение помощи для заданной встроенной функции: help -пробел-функция.

3/4 Операции с массивами (перед знаком арифметического действия ставится точка):

(например: [1 2 3;4 5 6].^2) — возведение каждого элемента матрицы в квадрат.

Выполнить матричные операции п.9 в виде операций с массивами.

8. Формирование коэффициентов характеристического полинома заданной числовой матрицы А: poly ( A ).

9. Формирование характеристического полинома заданной числовой матрицы А: poly ( sym ( A )). По умолчанию независимой переменной полинома является х.

10. Формирование характеристического полинома заданной числовой матрицы А с назначаемой независимой переменной полинома (например s ): poly ( sym ( A ), sym (' s ')).

11. Сравнить результаты выполнения п.п. 1.26, 1.27, 1.28.

12. Формирование коэффициентов характеристического полинома матрицы А по ее заданным собственным числам: poly ( eig ( A )).

13. Формирование характеристического полинома по заданным корням, являющимися элементами вектора Р : poly ( P ).

14. Формирование полинома с коэффициентами, являющимися элементами заданного вектора Р: poly 2 sym ( P ). Степень полинома на единицу меньше размерности заданного вектора Р.

II . Информативные сведения о матрицах, векторах, числах.

1. Размерность матрицы А: size ( A ).

2. Длина вектора Р: length ( P ).

3. Применить функцию size к вектору Р, примениить функцию length к матрице А (к прямоугольной и квадратной).

4. Уплотненный вывод на экран массивов и чисел: disp ( A ), disp ( P ), disp ( a ), где а — какое-либо число (действительное или комплексное, например, а=2+3 i ).

5. Определение простого числа: если а - простое число, то функция isprime ( a ) возвращает 1 (единицу), в противном случае будет 0 (ноль). Величина задаваемого числа а имеет определенные ограничения (порядка десятков миллионов).

6. Определение простых чисел из диапазона 2 . . . а: primes ( a ). Величина числа а также ограничена. Функция primes ( a ) возвращает вектор, элементы которого являются простые числа из диапазона 2 . . . а.

7. Определение знак заданного числа а: sign ( a ). Аргументом функции sign могут быть числа, выражения, математические функции.

8. Округление числа а до ближайшего целого: round ( a ).

9. Абсолютное значение заданного числа или выражения — abs : abs ((3-5)/2), abs (-2^3)

III. Специальные функции.

1. Разложение числа N на простые множители: factor ( N ).

2. Суммирование элементов вектора Р: sum ( P ). Результат — число.

3. Суммирование элементов столбцов матрицы А: sum ( A ). Результат — строка, состоящая из суммы элементов каждого столбца матрицы А.

4. Формирование произведения элементов вектора Р: prod ( P ).

5. Формирование произведения элементов столбцов матрицы А: prod ( A ).

6. Формирование матрицы с элементами из возможных перестановок элементов заданного числового вектора Р: perms ( P ).

Создание М-файлов в виде М-сценариев.

2- D графика в MATLAB .

М-сценарии представляют собой последовательность действий или запись вычислительных алгоритмов, которые затем оформляются системой MATLAB в виде m -файлов (с расширением m ). Техт М-сценария может быть написан в любом текстовом редакторе (текстовый документ) и затем перенесен в систему MATLAB , где для дальнейшего использования должен быть сохранен в окне редактора как m -файл.

1. Создание простейших сценариев.

10. Создать в командном окне MATLAB матрицу: а = [1 2 3;4 5 6] или а = [1,2,3;4,5,6];

11. Транспонировать матрицу а : а1 = а ' ;

12. Создать матрицу b = [10 20 30;40 50 60];

13. Перемножить матрицы а1 и b : с = а1* b ;

14. На экране создать надпись 'Перемножение матриц а1 и b :' с помощью disp ('Перемножение матриц а1 и b : ');

15. Вывести результат перемножения, набрав в командной строке обозначение с и нажав клавишу Enter ;

16. Чтобы не было вывода промежуточных результатов, то в конце каждой строки (команды) следует ставить точку с запятой ; .

17. Проделать предыдущие пункты команд с точкой с запятой и без.

18. Пункты 1-6 записать в М-файле. Для этого в командной строке набрать edit . Как только откроется окно текстового редактора, повторить набор команд пп. 1-6 и сохранить под каким-либо именем (например, Lab 1). Тем самым создали М - сценарий.

19. Выйти из редактора в командное окно MATLAB .

20. Запустить на выполнение созданный М - сценарий. Для этого в активной командной строке набрать имя М - сценария и нажать клавишу Enter ;

21. Для возвращения в редактор с целью редактирования созданного М - файла в командной строке набрать edit и через пробел имя желаемого файла (например, Lab 1).

22. В М - файле можно записывать комментарии. Они создаются с помощью знака %. Т.е. после знака % можно писать как на русском, так и на английском и т.д. Все, что находится за знаком %, является невыполняемыми действиями, даже если там будут записаны стандартные команды MATLAB .

23. Создать М - сценарий с набором матриц и их инвертированием. Инвертирование матрицы с: inv ( c ) .

Формирование выборки случайных чисел, распределенных по экспоненциальному закону.

Функция распределения экспоненциального распределения вероятностей:

где — интенсивность распределения, равная обратной величине математического ожидания (среднего) распределения, т.е. где — математическое ожидание.

Выборка случайных чисел определяется через инверсную функцию от F ( t ):

где — случайное число из интервала [0, 1],

1. Сценарий формирования выборки случайных чисел, распределенных по экспоненциальному закону.

1.1. Выборка из 18 случайных чисел с экспоненциальным распределением и с заданным параметром интенсивности, равным 2:

% начало цикла, шаг индексации равен 1

% — случайное число из [0, 1]

% получение вектора-столбца случайных чисел

% сортировка случайных чисел по возрастанию значений

1.2. Формирование выборки 18 случайных чисел с экспоненциальным распределением с помощью встроенной функции expinv :

T=expinv(p2,0.5)

1.3. Формирование выборки 18 случайных чисел с экспоненциальным распределением с помощью встроенной функции exprnd :

R = sort ( y ) % R — вектор случайных отсортировнных чисел по возрастанию

Сценарии 1.1, 1.2, 1.3 должны быть сохранены под какими-либо именами, которым система MATLAB присваивает расширение m . Выполнение m -файла (сценария) может быть осуществлено из рабочей строки командного окна MATLAB .

Примеры статистичесих интерактивных графических окон

функций распределения вероятностей.

Диалоговое (интерактивное) окно графических типовых распределений вероятностей в системе MATLAB — функция DISTTOOL ( disttool ).

DISTTOOL позволяет наглядно в виде графиков представлять различные функции распределения вероятностей с задаваемыми параметрами. В DISTTOOL приводятся две функции: cdf — функция распределения (интегральная функция распредления вероятностей), pdf — функция плотности распределения (дифференциальная функция распределения вероятностей).

Диалоговое (интерактивное) окно графических типовых гистограмм распределения вероятностей в системе MATLAB — функция RANDTOOL ( randtool ).

RANDTOOL позволяет представлять гистограммы функций плотности распределения вероятностей с возможным изменением параметров распределения и с изменением количества интервалов рассматриваемой гистограммы.

Графические построения. 2- D графика MATLAB .

2.1. График в полярной системе координат:

t=0:0.01:2*pi; y=3*(1+sin(t)); polar(t,y)

2.2. Совмещение графиков в одной системе координат с помощью функции hold on : t =0:0.01:2* pi ; y 1=3*(1+ sin ( t )); y 2=3*(1- sin ( t ));

polar(t,y1),hold on,polar(t,y2,'r')

2.3. Совмещение трех и более графиков с помощью функции hold on :

polar(t,y1),hold on,polar(t,y2,'r'),polar(t,y3,'g'),polar(t,y4,'k')

2.4. График в декартовой системе координат:

2.5. Формирование пояснений к графику с помощью функции gtext :

t=0:0.01:2*pi; y=sin(t);plot(t,y),grid,gtext('t'),gtext('y')

% требуемые символы ( t и y ) устанавливаются в позиции курсора мыши.

2.6. Построение графиков заданных функций — fplot .

% График функции sin ( t ) или sin ( x ) и т.д. в пределах по аргументу от до :

% График функции sin ( t ) в пределах по t от до с ограничением от -0.7 до 0.7

% Совмещение нескольких графиков: sin ( t ), exp (-0.5 t ), 3 cos ( t )

Задание: Построить с помощью fplot графики следующих функций и их комбинаций:

с соответствующими областями определения.

2.7. Формирование пояснений к графику с помощью функций title , xlabel , ylabel :

t =0:0.01:2* pi ; y = sin ( t );

plot ( t , y ), grid , title ('Синусоида'), xlabel ('радианы'),

ylabel(' функция '),gtext('t'),gtext('y')

% требуемые символы на графике устанавливаются в позиции курсора мыши.

2.8. Формирование пояснений к начертанию нескольких графиков с помощью функции legend :

t=0:0.01:2*pi;y1=sin(t);y2=cos(t);

plot(t,y1,'r'),grid,hold on,plot(t,y2), legend('s1','c2')

2.9. Установка ярлыка legend в различных частях графика:

в левом верхнем углу: legend (' s 1',' c 2', 2);

в левом нижнем углу: legend (' s 1',' c 2', 3);

в правом нижнем углу: legend (' s 1',' c 2', 4);

в правом верхнем углу: legend (' s 1',' c 2', 1)

или по умолчанию: legend (' s 1',' c 2');

вне рабочей области графика: legend (' s 1',' c 2', -1);

2.10. Интерактивный графический калькулятор — funtool .

В командной строке MATLAB набрать функцию funtool и запустить на выполнение ( Enter ). Самостоятельно проделать возможные построения и вычисления: графики стандартных функций, дифференцирование и интегрирование функциональных выражений, обращение функций, сложение двух функций и т.д.

% Установка для графиков цветов осуществляется в соответствии со следующими ключевыми обозначениями, приведенными в табл.1.:

Встроенные математические функции MATLAB позволяют находить значения различных выражений. MATLAB предоставляет возможность управления форматом вывода результата. Вид, в котором выводится результаты вычислений, зависит от формата вывода, установленного в MATLAB. Далее объяснено, как задать основные форматы вывода.


Числовые данные, с которыми мы пока будем оперировать в MATLAB, в памяти компьютера представлены вещественными переменными класса double. Это означает, что каждое вещественное число занимает 8 байтов в оперативной памяти и принимает по модулю значения из диапазона . Количество значащих цифр при этом достигает 16 - 17. Именно с такой точностью MATLAB выполняет все вычисления. Однако при отображении всех результатов на экране часть значащих цифр отбрасывается в соответствии с установленным форматом вывода. Отображаемые значения округляются по общепринятым в математике правилам.

В таблице 2 представлены основные форматы вывода числовых данных с фиксированной (первый столбец) и плавающей (второй столбец) запятой. Формат rational (третий столбец) позволяет отображать числовые значения в виде подходящих рациональных дробей с минимально возможными числителями и знаменателями. При этом значение переменной x, хранящееся в памяти компьютера, не зависит от установленного формата вывода.

Таблица 2.
Формат Описание Пример
short Короткое число с фиксированной точкой. 4 разряда отводится под вывод дробной части. При необходимости производится округление до четвертого знака. 0.6667 10.6667 100.0201 (2/3) (32/3) (100.02005)
>> format short >> x=sqrt(2) x= 1.4142
long Длинное число с фиксированной точкой. 15 разрядов отводится под выводов дробной части. При необходимости производится округление. 1.001002003004001 (1.0010020030040005) >> format long >> x=sqrt(2) x = 1.414213562373095
short e Короткое число с плавающей точкой. Представляется с помощью пяти разрядов,4 из которых отводится под вывод дробной части. При этом e+001 равносильно умножению числа на 10 или 10 1 -порядок целой части числа –десятки, e+002 равносильно умножению числа на 100 или 10 2 - порядок целой части числа сотни, e-001 равносильно делению числа на 10 или умножению на 10 -1 - порядок сила – десятые доли, e-002 равносильно делению числа на 100 или умножению на 10 -2 - сотые доли. 6.6667e-001 1.2346e+000 1.0667e+001 1.0002e+002 (2/3) (1.23456) (32/3) (100.02005)
>> format short e >> x=sqrt(2) x = 1.4142e+000
long e Длинное число с фиксированной точкой. Представляется с помощью 17 разрядов,16 из которых отводится под вывод дробной части. 1.123456789012346e+018 (1123456789012345678) 1.123456789012346e+024 (1123456789012345678901234) >> format long e >> x=sqrt(2) x = 1.414213562373095e+000
short g Выбирается наилучшая форма представления числа из форматов short и shot e. 5.4321e-006 (0.0000054321)
long g Выбирается наилучшая форма представления числа из форматов long и long e. 5.4321e-006 (0.0000054321) 6.7890123456789e-006 (0.0000067890123456789)
rational Позволяет отображать числовые значения в виде подходящих рациональных дробей с минимально возможными числителями и знаменателями >> format rational >> x=sqrt(2) x = 1393/985 >> 0.666666667 ans = 2/3

По умолчанию система использует формат short (укороченный).

Замечание. Все промежуточные вычисления МАТЛАБ производит с двойной точностью double, независимо от того, какой формат вывода установлен.

Упражнение 2. Форматы вывода результата вычислений.

1) сложите два числа 1/2 и 2/3 и определите формат полученного ответа;

2) перейдите в формат format rational(Можно кратко в format rat)

и сложите числа 1/2 и 2/3, а также числа 0.3 и 0.6,
затем все тоже проделайте в форматах shortE, longE;

3) выберите в меню File -> Preferences -> Command Window

в открывшемся окне Command Window Preferences

в разделе Text display выберите заголовок Numeric format
и измените формат вывода данных на rational

и снова сложите числа 1/2 и 2/3, а также числа 0.3 и 0.6

затем снова через Preferences переведите вывод данных в формат short.

Символьные переменные. Работа с алгебраическими выражениями.

(переменные записываются через пробел) позволяет работать с символьными переменными как с числами, то есть мы можем работать с алгебраическими выражениями:

Пример. Работа с алгебраическими выражениями, с символьными переменными.

. Undefined function or variable 'x'.

МАТЛАБ вывел алгебраическое выражение.

Посмотрите в help команды-simplifications (упрощения): как делать различные преобразования в алгебраических выражениях. Введите

Пример. Работа с алгебраическими выражениями. Подстановка чисел.

Теперь присвоим x какое-нибудь число:

снова вызовем f

ничего не изменилось, но если набрать заново алгебраическое выражение

f=(x+1)*(x-1) ( можно просто выбрать данную команду при помощи стрелок)

Мы получим значение функции f=3, при x = 2.

Пример. Упрощение алгебраических выражений.

При помощи различных команд simplifications (упрощения) записать различные формулы сокращенного умножения: разность квадратов; квадрат суммы, разности; куб суммы, разности; разность кубов, сумма кубов.


В качестве символьных переменных можно выбрать не только буквы, но и числа. Например, если нужно раскрыть скобки в выражении , то ввод


вычисляет значение выражения .


Теперь мы раскрыли скобки и привели подобные слагаемые и получили ответ в радикалах: .

А для того чтобы узнать его примерное значение введем

Посмотрите через help функцию sym.

Команда sym позволяет вводить ограничения на свойства переменных:


Решим уравнение: .

Уравнение имеет действительные и комплексные корни.

Теперь введем ограничение на переменную: x – вещественное (действительное) число.

Читайте также: