Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

информатика / MathCad и MatLab / Програмирование в системе MatLAB

.pdf
Скачиваний:
44
Добавлен:
06.02.2016
Размер:
198.52 Кб
Скачать

Кафедра «Экономической кибернетики и информационных технологий»

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к выполнению лабораторных работ

«Программирование в среде MatLAB»

(для студентов технических специальностей)

Рекомендовано на заседании кафедры ЭКиИТ

Протокол № 5 от 22.01.03

Утверждено на заседании методсовета ДГМИ

Протокол № 6 от 21.02.03

Алчевск, 2003

ББК У.в6

Методические указания к выполнению лабораторных работ «Программирование в среде MatLAB» для студентов технических специальностей / Сост.: Будков С. Ю., Мотченко Л. А. – Алчевск, ДГМИ, 2003. – 28 с.

Приводится описание системы MatLAB, позволяющее работать с ней в режиме программирования а также задания к лабораторным работам.

Составители:

С. Ю. Будков, ассист.,

 

Л. А. Мотченко, инж.

Ответственный редактор

С. И. Зайцев, проф.

Ответственный за выпуск

Л. А. Мотченко, инж.

ББК У.в6

Методичні вказівки до виконання лабораторних робіт «Програмування в середі MatLAB» для студентів технічних спеціальностей / Укл.: Будков С. Ю., Мотченко Л. А. – Алчевськ, ДГМІ, 2003. – 28 с.

Приводиться опис системи MatLAB, що дозволяє працювати з нею в режимі програмування а також завдання до лабораторних робіт.

Укладачі:

С. Ю. Будков, асист.,

 

Л. А. Мотченко, інж.

Відповідальний редактор

С. І. Зайцев, проф.

Відповідальний за випуск

Л. А. Мотченко, інж.

1 ГРАФИЧЕСКОЕ ПРЕДСТАВЛЕНИЕ

2

ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА

Для решения различного рода расчетных задач применяется программирование. Программирование вычислительного процесса состоит из двух этапов:

составление алгоритма решения задачи;

реализация алгоритма при помощи конкретного языка программирования на конкретной ЭВМ.

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

1.1Графические обозначения этапов процесса вычислений

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

Символы процесса:

Процесс (вычисления по заранее известной формуле, присвоение и др.)

Предопределенный процесс (подпрограмма).

Ручная операция.

Подготовка данных (часто применяется для обозначения заголовка арифметического цикла).

Решение (логическое условие).

Параллельные действия (параллельная обработка данных).

3

Границы циклов (применяется для отображения циклов с пред- и постусловием).

Символы линий:

Линия (обозначает связи между блоками, направление указывается стрелкой).

Передача управления.

Канал связи.

Пунктирная линия.

Соединитель (объединяет части блок-схемы, расположенной на нескольких листах).

Терминатор (заглушка, начало или конец алгоритма).

Комментарий.

Пропуск блоков.

Символы данных:

Данные (ввод данных).

Запоминаемые данные.

Оперативное запоминающее устройство.

Запоминающее устройство с последовательным доступом (лента стриммера).

Запоминающее устройство с прямым доступом (жесткий диск).

4

Документ (вывод на печать).

Ручной ввод.

Карта.

Бумажная лента.

Дисплей.

1.2 Графическое представление базовых алгоритмов

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

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

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

1.2.1 Линейные алгоритмы

Составим алгоритм вычисления значения функции Y = 356 × A + B при A = 10 и B = 5 и выведем полученный результат на принтер.

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

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

1)введем в оперативную память ЭВМ переменную A и ее значение;

2)аналогичным образом введем переменную B и ее значение;

3)произведем вычисление функции Y;

4)выведем результат.

5

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

Начало

1

 

1

3

A=10

×

 

Y=365 A+B

2

4

B=5

Вывод A и B

1

Конец

Рисунок 1 – Блок-схема линейного алгоритма

1.2.2 Алгоритмы с ветвлениями вычислительного процесса

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

Составим алгоритм работы контролера отдела технического контроля (ОТК), контролирующего диаметр шариков для изготовления подшипника и выбраковывающего те, которые не удовлетворяют техническим условиям (ТУ).

При разделении процесса принятия решения на элементарные действия можно определить следующую их последовательность:

1)получить ТУ;

2)произвести замер диаметра шарика;

3)сравнить полученное значение с заданным в ТУ и если оно удовлетворяет условию, то считать шарик годным;

4)если значение диаметра не удовлетворяет ТУ, то считать шарик

браком.

6

Начало

Получить ТУ (D)

Замерить

диаметр

Проверка со-

d=D

ответствия

Годен

 

 

 

 

Брак

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

Рисунок 2 – Блок-схема алгоритма с ветвлением

1.2.3 Циклические алгоритмы

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

Существует три типа циклов:

1)с предусловием (выполнение операторов в цикле осуществляется при выполнении условия в заголовке цикла);

2)с послесловием (выполнение операторов в цикле осуществляется при выполнении условия в конце цикла);

3)арифметический (в заголовке цикла задано четкое число повторе-

ний).

В зависимости от конкретных условий применяется тот или иной его тип. Так, если известно количество повторений, целесообразнее применять арифметический цикл; если необходимо, чтобы операторы в цикле выпол-

7

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

Циклы изображаются следующим образом:

a)

 

Вход в цикл

б)

 

Вход в цикл

 

Имя цикла

 

Имя цикла

 

Пока <условие>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Действия

 

 

Действия

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Имя цикла

 

Имя цикла

 

 

Пока <условие>

 

 

 

 

 

 

 

Выход из цикла

 

 

Выход из цикла

 

 

 

 

Рисунок 3 – Циклы с предусловием (а) и постусловием (б)

Вход в цикл

от <начала> до

 

<конца> с <ша-

 

гом>

Выход из цикла

 

Действия

Рисунок 4 – Арифметический цикл

Рассмотрим пример циклического алгоритма. Допустим, требуется произвести приращение всех элементов вектора X, длиной 10 на величину 5.

Для этого необходимо выполнить следующие действия:

8

1)ввести вектор X;

2)при изменении номера массива от 1 до 10 прибавить к элементу вектора число 5;

3)вывести результат.

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

Начало

Ввод X

от i=1 до 10

с шагом 1

X[i]=X[i]+5

Вывод X

Конец

Рисунок 5 – Блок-схема циклического алгоритма с арифметическим циклом

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

9

a)

б)

Начало

Начало

 

Ввод X

 

Ввод X

i=1

 

i=1

 

 

 

 

 

 

 

 

 

 

Цикл 1 Цикл 1

Пока i<=10

 

X[i]=X[i]+1

X[i]=X[i]+1

 

 

i=i+1

i=i+1

 

 

Пока і<10

Цикл 1

Цикл 1

 

Вывод X

Вывод X

 

Конец

Конец

 

Рисунок 6 – Блок-схема алгоритма решения задачи с применением циклов с пред- (а) и постусловиями (б)

Циклы с постусловиями могут быть также реализованы с применением ветвлений и безусловных переходов.

Приведем пример реализации заданного алгоритма с применением оператора ветвления и безусловным переходом.

10