Раздел: Документация
0 ... 117 118 119 120 121 122 123 ... 365 и для полученного решения вычислите: •интеграл по всему промежутку от yf (х); •корни уравнения у, = —1. 5.Решите дифференциальное уравнение для ле [0, 7]: 6.y + 3y-0.1y2=2sinjc, у(0) = 0.02, /(0) = 1 и для полученного решения найдите все локальные максимумы и минимумы у (а). Глава 7 Управляющие конструкции языка программирования Файл-функции и файл-программы, которые вы создавали при чтении двух предыдущих глав, являются самыми простыми примерами программ. Все команды MATLAB, содержащиеся в них, выполняются последовательно. Для решения многих более серьезных задач требуются программы, в которых действия повторяются циклически, а в зависимости от некоторых условий выполняются различные части программы. В данной главе описаны управляющие конструкции языка программирования MATLAB, которые могут быть использованы при написании как файл-программ, так и файл-функций. Операторы цикла Схожие и повторяющиеся действия выполняются при помощи операторов цикла for и while. Цикл for предназначен для выполнения заданного числа повторяющихся действий, a while— для действий, число которых заранее не известно, но известно условие продолжения цикла. Цикл for Использование for осуществляется следующим образом: for count = start:step:final команды MATLAB end Здесь count — переменная цикла, start— ее начальное значение, final — конечное значение, a step — шаг, на который увеличивается count при каж- дом следующем заходе в цикл. Цикл заканчивается, как только значение count становится больше final. Переменная цикла может принимать не только целые, но и вещественные значения любого знака. Разберем применение цикла for на некоторых характерных примерах. Пусть требуется вывести графики семейства кривых для л€ [0, 2тс], которое задано функцией у{х, a) = e~axsinx, зависящей от параметра а, для значений параметра а от -0.1 до 0.1 с шагом 0.02. Можно, конечно, последовательно вычислять у(х, о) и строить ее графики для различных значений а от -0.1 до 0.1, но гораздо удобнее использовать цикл for. В редакторе М-файлов наберите текст файл-программы, приведенный в листинге 7.1, сохраните его в файле FORdeml.m и запустите файл-программу на выполнение (или из редактора М-файлов, или из командной строки, набрав в ней FORdemi и нажав <Enter>) (работа в редакторе М-файлов и запуск файл-программ описаны в главе 5). \ Листинг 7.1. Файл-программа FORdeaa для вывода семейства кривых figure % создание графического окна х = 0:pi/30:2*pi; % вычисление вектора значений аргумента 4 перебор значений параметра в цикле for а = -0.1:0.02:0.1 % вычисление вектора значений функции для текущего значения параметра у = ехр(-а*х).*sin(x); % добавление графика функции hold on plot(x, у) end Примечание Редактор М-файлов автоматически предлагает расположить операторы внутри цикла с отступом от левого края. Используйте эту возможность для структурирования текста программы. Редактор автоматически устанавливает отступы подходящей длины, если выбран переключатель Smart indent на вкладке Language для компоненты Editor/Debugger в диалоговом окне Preferences. В результате выполнения FORdemi появится графическое окно, изображенное на рис. 7.1, которое содержит требуемое семейство кривых. 0 ... 117 118 119 120 121 122 123 ... 365
|