Матлаб округление до целого

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

x = 2;
y = 4;
d = sqrt(x^2+y^2); %вычисление евклидового расстояния

Аналогичным образом вызываются и все другие математические функции, представленные в табл. 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, из случайных чисел

Читайте также:  Можно ли поставить gddr5 вместо gddr3

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

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

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: Только сон приблежает студента к концу лекции. А чужой храп его отдаляет. 8941 – | 7611 – или читать все.

91.146.8.87 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

О проекте

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

Перевод осуществляется автоматически с использованием системы ПРОМТ. Инженеры ЦИТМ Экспонента провели первоначальную работу по настройке более 5000 тонких параметров алгоритма перевода, словарей, препроцессора и памяти перевода, чтобы системно разрешить огромный объем трудностей машинного перевода.

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

Читайте также:  Музыка на ps4 с телефона

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

∑ Ваш рейтинг в сообществе Экспонента растет с количеством внесенных в память перевода исправлений.

"Документация" это проект сообщества Экспонента. Данный релиз содержит:

  • Более 150 000 страниц локализованной технической документации
  • 1.6 Гб текста и 2.5 Гб графических пояснений
  • Более 10 000 примеров кода

По вопросам поддержки и коммерческого использования обращайтесь в ЦИТМ Экспонента.

Предыдущие релизы

Вы можете просмотреть документацию предыдущих (архивных) релизов MATLAB. Обратите внимание, что внесение правок в перевод архивных релизов невозможно.

Если вы столкнулись с проблемой, как округлить число в Матлабе, то далее в статье вы можете узнать все виды округлений в Matlab.

Есть несколько видов Matlab округление:

1. round – Округление до ближайшего целого

a = [-1.9, -0.2, 3.4, 5.6, 7.0, 2.4+3.6i]

a =
Columns 1 through 4
-1.9000 -0.2000 3.4000 5.6000
Columns 5 through 6
7.0000 2.4000 + 3.6000i

Теперь используем функцию round:

ans =
Columns 1 through 4
-2.0000 0 3.0000 6.0000
Columns 5 through 6
7.0000 2.0000 + 4.0000i

2. ceil – Округление в большую сторону

a = [-1.9, -0.2, 3.4, 5.6, 7, 2.4+3.6i]

a =
Columns 1 through 4
-1.9000 -0.2000 3.4000 5.6000
Columns 5 through 6
7.0000 2.4000 + 3.6000i

Теперь используем ceil:

ans =
Columns 1 through 4
-1.0000 0 4.0000 6.0000
Columns 5 through 6
7.0000 3.0000 + 4.0000i

3. fix – Округление в сторону нуля

a = [-1.9, -0.2, 3.4, 5.6, 7.0, 2.4+3.6i]

a =
Columns 1 through 4
-1.9000 -0.2000 3.4000 5.6000
Columns 5 through 6
7.0000 2.4000 + 3.6000i

Теперь воспользуемся fix:

ans =
Columns 1 through 4
-1.0000 0 3.0000 5.0000
Columns 5 through 6
7.0000 2.0000 + 3.0000i

4. floor – Округление в меньшую сторону

a = [-1.9, -0.2, 3.4, 5.6, 7.0, 2.4+3.6i]

a =
Columns 1 through 4
-1.9000 -0.2000 3.4000 5.6000
Columns 5 through 6
7.0000 2.4000 + 3.6000i

Теперь применим floor:

ans =
Columns 1 through 4
-2.0000 -1.0000 3.0000 5.0000
Columns 5 through 6
7.0000 2.0000 + 3.0000i

Вот и все виды матлаб округление.

Поэтому из выше всего сказанного можно сделать вывод, что вам необходимо просмотреть много дополнительной информации и альтернатив!

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock detector