Разделы презентаций


Основные функции и управляющие конструкции Прикладные программные системы

Содержание

Общая информация по курсу: 1 лек+3лаб, 3 ЗЕ (кредита) + 1 ЗЕ КР (ИУ)Балльно-рейтинговая система:1.5 балла за посещение лекции (8 лекций)6 баллов за лабораторную (8 работ)7.5 баллов за контрольную

Слайды и текст этой презентации

Слайд 1Основные функции и управляющие конструкции
Прикладные программные системы Лекция №1

Основные функции и управляющие конструкцииПрикладные программные системы Лекция №1

Слайд 2Общая информация по курсу:
1 лек+3лаб, 3 ЗЕ

(кредита) + 1 ЗЕ КР (ИУ)
Балльно-рейтинговая система:

1.5 балла за посещение

лекции (8 лекций)
6 баллов за лабораторную (8 работ)
7.5 баллов за контрольную (2 работы)
25 баллов за зачёт

Курсовая работа (ИУ):
 100 баллов, идёт в зачётку

Организационные вопросы

Общая информация по курсу:   1 лек+3лаб, 3 ЗЕ (кредита) + 1 ЗЕ КР (ИУ)Балльно-рейтинговая система:1.5

Слайд 3Исаак Ньютон

Основы основ
«При изучении наук примеры полезнее правил»

Исаак НьютонОсновы основ«При изучении наук примеры полезнее правил»

Слайд 4Интерфейс среды MATLAB
Окно команд (Command window)
Рабочее пространство (Workspace)
«Текущая папка»

(Current directory)
История команд (Command History)
Детали (Details)
Главное меню и панель инструментов
Пуск

(Start)
Интерфейс среды MATLABОкно команд (Command window) Рабочее пространство (Workspace)«Текущая папка» (Current directory)История команд (Command History)Детали (Details)Главное меню

Слайд 5Операция присваивания =
>> a = 5;
>> b = a +

4;
Точка с запятой в конце выражения "подавляет" вывод результата в

Command window
Основные операции:
+   −   /   *   ^
Некоторые "встроенные" переменные:
i, j - мнимая единица
pi - число π
Inf - бесконечность
ans - результат последнего вычисления

Основные операции и скалярные переменные

Операция присваивания =>> a = 5;>> b = a + 4;Точка с запятой в конце выражения

Слайд 6Вектор имеет размерность 1×N или N×1
В MATLAB'е вектор задаётся так:
>> v1

= [3 7 11.5]; % вектор-строка (1×3)
>> v2 = [2;

6; 19]; % вектор-столбец  (3×1)
>> v3 = 1:5; % вектор целых чисел от 1 до 5
>> v4 = 1:0.1:5; % вектор чисел от 1 до 5 с шагом 0.1
Здесь знак "%" означает начало комментария
Элементы вектора-строки можно писать через символ ",“ или пробел

Векторы

Вектор имеет размерность 1×N или N×1В MATLAB'е вектор задаётся так:>> v1 = [3 7 11.5]; % вектор-строка (1×3)>>

Слайд 7Операции "как в линейной алгебре":
+   −   *
>> [1 3 5]

+ [2 1 9]
ans = [3 4 14]
>> [1 3

5] * [2; 1; 9]
ans = 50
Поэлементные операции:
+   −   .*   ./   .^
>> [1 3 5] .* [2 1 9]
ans = [2 3 45]
Транспонирование (символ  ' ):
>> [1 2 3]'; % в результате будет вектор-столбец

Векторные операции


Слайд 8Способы задания:
>> A1 = [1 9 4; 3 1 0];

% Матрица 2×3
>> A2 = ones(5, 5); % Матрица 5×5, состоящая

из единиц
>> A3 = zeros(4, 3); % Матрица 4×3, состоящая из нулей
>> A4 = eye(6); % Единичная матрица 6×6
>> A5 = rand(3, 7); % Матрица случайных чисел 3×7 в диапазоне [0; 1)

Основные операции:
те же, что и с векторами

Матрицы

Способы задания:>> A1 = [1 9 4; 3 1 0]; % Матрица 2×3>> A2 = ones(5, 5);

Слайд 9Графики строятся по точкам:
задаётся два вектора равной длины
например:
>> v1 =

[1 2 3 4];
>> v2 = v1.^2;
тогда имеем пары точек:

(1, 1), (2, 4), (3, 9), (4, 16)
эти точки и строятся
для этого всего лишь нужно:
>> plot(v1, v2)
Можно задавать цвет и тип линии
подробнее можно прочитать в справке:
>> help plot

Графики

Графики строятся по точкам:задаётся два вектора равной длинынапример:>> v1 = [1 2 3 4];>> v2 = v1.^2;тогда

Слайд 10Лев Ландау

Основные математические функции
“Произведение оптимизма на знание — величина постоянная”

Лев ЛандауОсновные математические функции“Произведение оптимизма на знание — величина постоянная”

Слайд 11Все функции имеют вид:
function(argument1, argument2, ...)
Все математические функции способны работать

с векторами и матрицами
Почти все функции "возвращают" какое-либо значение (а

то и несколько)
"Возвращать" здесь - синоним слова "выдавать"

 Описание функций

Все функции имеют вид:function(argument1, argument2, ...)Все математические функции способны работать с векторами и матрицамиПочти все функции

Слайд 12Тригонометрические функции стандартны для программирования:
sin(x), cos(x), tan(x), acos(x), asin(x), atan(x)
их

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

в радианах
Но есть и другие:
sind(x), cosd(x), tand(x), asind(x), acosd(x), atand(x) 
всё то же самое, но аргумент в градусах

Тригонометрические функции

Тригонометрические функции стандартны для программирования:sin(x), cos(x), tan(x), acos(x), asin(x), atan(x)их аргументом может быть как число, так и

Слайд 13Основные функции:
exp(x) — это e в степени x
log(x) — натуральный

логарифм
log2(x) — логарифм по основанию 2
log10(x) — логарифм по основанию

10
sqrt(x) — квадратный корень
pow2(x) — 2 в степени x
Естественно, они тоже работают с векторами и матрицами

Работа со степенями

Основные функции:exp(x) — это e в степени xlog(x) — натуральный логарифмlog2(x) — логарифм по основанию 2log10(x) —

Слайд 14Основные функции:
 round(x) — округляет по правилам математики
ceil(x) —

округляет вверх
floor(x) — округляет вниз
mod(a, b) — возвращает

остаток при целочисленном делении a / b
rem(a, b) — также возвращает остаток при целочисленном делении a / b
fix(x) — округляет в сторону 0

Функции округления

Основные функции: round(x) — округляет по правилам математики ceil(x) — округляет вверх floor(x) — округляет вниз mod(a,

Слайд 15  Сумма
Произведение
Основная функция:
>> sum(A);
Если A - вектор, то sum возвращает

число   
Если А - матрица, то sum возвращает вектор, содержащий суммы

столбцов.

Основная функция:
>> prod(A);
Если A - вектор, то prod возвращает число
Если А - матрица, то prod возвращает вектор, содержащий произведения столбцов.

Сумма и произведение

  СуммаПроизведениеОсновная функция:>> sum(A);Если A - вектор, то sum возвращает число   Если А - матрица, то sum возвращает

Слайд 16  Минимум
Максимум
Основная функция:
>> min(A);
Если A - вектор, то min возвращает число   
Если

А - матрица, то min возвращает вектор, содержащий минимумы столбцов.
Основная функция:
>>

max(A);
Если A - вектор, то max возвращает число
Если А - матрица, то max возвращает вектор, содержащий максимумы столбцов.

Минимум и максимум

  МинимумМаксимумОсновная функция:>> min(A);Если A - вектор, то min возвращает число   Если А - матрица, то min возвращает вектор, содержащий

Слайд 17http://www.xkcd.com/182

Основные функции линейной алгебры

http://www.xkcd.com/182Основные функции линейной алгебры

Слайд 18Определитель (только для квадратных матриц)
>> A = [3 5 8;

4 5 7; 9 9 1]; >> b = det(A)
b =

49
Ранг (количество линейно независимых строк/столбцов)
>> r = rank(A)
r = 3
Сумма элементов диагонали (только квадратные матрицы):
>> trace(A)
ans =  17

Работа с матрицами

Определитель (только для квадратных матриц)>> A = [3 5 8; 4 5 7; 9 9 1]; >>

Слайд 19Длина (только для вектора):
>> length(v); % возвращает количество элементов в

векторе
Размер
>> size(A); % возвращает вектор из 2-х элементов: количество строк

в матрице и количество столбцов в матрице
>> size([1 4 7 9])
ans = [1 4]
>> size([1 3 5; 2 5 1])
ans = [2 3]

Информация о матрицах

Длина (только для вектора):>> length(v); % возвращает количество элементов в вектореРазмер>> size(A); % возвращает вектор из 2-х

Слайд 20Пусть есть СЛАУ A*x = b
Функция, решающая СЛАУ:
>> x =

linsolve(A, b)
Можно использовать более простой способ:
>> x = A\b
Обратите внимание

на знак \
Он означает: взять матрицу, обратную А, и умножить на b
Самый интуитивно простой способ:
>> x = inv(A) * b; % inv — медленная!
Здесь inv — функция, возвращающая обратную матрицу

Решение СЛАУ

Пусть есть СЛАУ A*x = bФункция, решающая СЛАУ:>> x = linsolve(A, b)Можно использовать более простой способ:>> x

Слайд 21«А вот они условия, а вот она среда»
Песня из х/ф

"Двенадцать стульев"
Управляющие конструкции: условия

«А вот они условия, а вот она среда»Песня из х/ф

Слайд 22Условный оператор нужен для ветвления программы
Конструкция:
if условие
    код
else
    код
end
Ветки

else может не быть
Структура оператора условия

Условный оператор нужен для ветвления программыКонструкция:if условие    кодelse    кодendВетки else может не бытьСтруктура оператора условия

Слайд 23Возможно и множественное ветвление
Конструкция:
if условие
    код
elseif условие
    код
else
   

код
end
Веток elseif может быть много
Структура оператора условия

Возможно и множественное ветвлениеКонструкция:if условие    кодelseif условие    кодelse    кодendВеток elseif может быть многоСтруктура оператора условия

Слайд 24Условие - это логическое выражение,
то есть оно может быть истинным

или ложным
В нём могут быть операторы:
сравнения: >, =,

== ('равно'), ~= ('не равно')
математической логики: && ('И'), || ('ИЛИ')
Например:
if (a > 5) && (b ~= 3)
     c = 5;
      end;

Формат условия

Условие - это логическое выражение,то есть оно может быть истинным или ложнымВ нём могут быть операторы:сравнения: >,

Слайд 25Конструкция условного выбора:
switch переменная
case значение
    код
case значение
    код
...
otherwise
   

код
end
Условный выбор

Конструкция условного выбора:switch переменнаяcase значение    кодcase значение    код...otherwise    кодendУсловный выбор

Слайд 26“Machines might give us more time to think but will

never do our thinking for us”
Thomas J Watson
Управляющие конструкции: циклы

“Machines might give us more time to think but will never do our thinking for us”Thomas J

Слайд 27Используйте циклы только при необходимости
Причины:
оптимизация матричных вычислений
код проигрывает в

краткости
Почти все циклические операции можно заменить матричными
Конструкция цикла for:
for переменная

= вектор
    код
end

Переменная по очереди принимает все значения из вектора

Цикл for

Используйте циклы только при необходимостиПричины: оптимизация матричных вычисленийкод проигрывает в краткостиПочти все циклические операции можно заменить матричнымиКонструкция

Слайд 28Конструкция цикла while:
while условие
    код
end
Условие строится по тому же принципу,

что и в операторе if
Цикл будет выполняться, пока условие верно
Цикл while

Конструкция цикла while:while условие    кодendУсловие строится по тому же принципу, что и в операторе ifЦикл будет выполняться,

Слайд 29Мгновенный выход из цикла на следующую после него строку:
break
Мгновенный

переход на следующую итерацию цикла:
 continue
Команды внутри циклов

Мгновенный выход из цикла на следующую после него строку: breakМгновенный переход на следующую итерацию цикла: continueКоманды внутри

Слайд 30Нужно привыкнуть к непривычному синтаксису MATLAB'а
Не стоит забывать линейную алгебру

:)
Мыслить в терминах матриц - эффективно
Функции, работающие с матрицами, -

это удобно
Стандартные управляющие конструкции тоже есть
Хотя, например, for имеет свои особенности

Резюме

Нужно привыкнуть к непривычному синтаксису MATLAB'аНе стоит забывать линейную алгебру :)Мыслить в терминах матриц - эффективноФункции, работающие

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика