Главная страница
Навигация по странице:

  • 25,7-14,6

  • Запустить файл После установки точек останова запустите файл из окна команд или редактора. Запуск файла дает следующие результаты Кнопка Run

  • Приостановить запуск файла

  • ЛР1. Лаб работа 1. Лабораторная работа введение в матлаб цель работы освоение базовых операторов и отладка программ в среде конечного пользователя Матлаб.


    Скачать 367.55 Kb.
    НазваниеЛабораторная работа введение в матлаб цель работы освоение базовых операторов и отладка программ в среде конечного пользователя Матлаб.
    Дата23.06.2021
    Размер367.55 Kb.
    Формат файлаpdf
    Имя файлаЛаб работа 1.pdf
    ТипЛабораторная работа
    #220843

    Лабораторная работа ВВЕДЕНИЕ В МАТЛАБ Цель работы – освоение базовых операторов и отладка программ в среде конечного пользователя Матлаб. Работа включает упражнения и задачи по разделам. Переменные и вектора Условный оператор if Оператор цикла while Оператор цикла for Средства отладки программ Задачи по отладке программ Задание Выполнить упражнения Отладить программы Оформить отчет Упражнения Переменные В Матлаб существуют системные переменные, которые можно использовать в математических выражениях
    - ans - результат последней операции без знака присваивания
    - i, j - мнимая единица
    - pi - число π (3.141592653589793);
    - inf - машинный символ бесконечности (∞);
    -
    NaN - неопределенный результат (0/0, ∞/∞, 1

    и т.п.);
    - realmin - наименьшее число с плавающей точкой (е
    - realmax - наибольшее число с плавающей точкой (е. Любая переменная до использования в формулах и выражениях должна быть определена. Для определения переменной необходимо набрать ее имя, символ
    «=» и значение переменной. Здесь знак равенства – это оператор присваивания, действие которого не отличается от других языков программирования. Основные математические функции 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) округление до ближайшего целого Имена переменных не должны совпадать с именами встроенных процедур, функций и встроенных переменных системы. Имена переменных могут задаваться только латинскими буквами, цифрами и символом ‘_’. Причем, первый символ в имени должен соответствовать букве латинского алфавита. Имя может содержать до 19 символов. Система различает большие и малые буквы в именах переменных. То есть ABC, abc, Abc, aBc – это имена разных переменных.
    Выражениев правой части оператора присваивания может быть числом, арифметическим выражением, строкой символов или символьным выражением. Отметим, что если речь идет о символьной или строковой переменной, то выражение в правой части оператора присваивания следует брать в одинарные кавычки. Если символ «;» в конце выражения отсутствует, тов качестве результата выводится имя переменной и ее значение. Наличие символа «;» передает управление следующей командной строке. Это позволяет использовать имена переменных для записи промежуточных результатов в память компьютера. Упражнение 1 В командном окне

    Ввести численные переменные а в x=1 y=2, вычислить z=(x+y)-a/b

    Ввести символьные переменные с

    Ввести строковую переменную h= мама мыла раму

    Полученный листинг скопировать в отчет Листинга а =
    2.3000
    » b=-34.7 b =
    -34.7000
    » х=1;у=2;
    » z=(х+у)-а/b z =
    3.0663
    >>%------------------------------------------------ Определение символьной переменной
    » с='а' c= а Определение строковой переменной
    » мама мыла раму' h = мама мыла раму
    Если команда не содержит знака присваивания, то по умолчанию вычисленное значение присваивается специальной системной переменной ans. Причем полученное значение можно использовать в последующих вычислениях, но важно помнить, что значение ans изменяется после каждого вызова команды без оператора присваивания. Упражнение 2 В командном окне

    Ввести формулы 25,7-14,6 затем 2 x ans затем x=ans/2

    Полученный листинг скопировать в отчет Листинг 2

    » 25.7-14.6 ans =
    11.1000
    » %3начение системной переменной равно 11.1000
    » 2*ans ans =
    45.1200
    » %3начение системной переменной равно 22.2000
    » ха х =
    3.1355
    »
    %3начение системной переменной не изменилось и равно 22.2000
    » ans
    22.2000 Упражнение 3 В командном окне

    Ввести численные переменные
    ABC=1, abc=2,
    Abc=3, aBc=4, вычислить x= ABC+abc+Abc+aBc, вычислить у ABC*abc*Abc*aBc

    Полученный листинг скопировать в отчет Листинг 3

    >> ABC=1
    ABC =
    1.0000
    >> abc=2 abc =
    2.0000
    >> Abc=3
    Abc =
    3.0000
    >> aBc =4 aBc =
    4.0000 Массивы
    Массив - множественный тип данных, состоящий из фиксированного числа элементов. Как и любой другой переменной, массиву должно быть присвоено имя Переменную, представляющую собой просто список данных, называют одномерным массивом или вектором. Для доступа к данным, хранящимся в определенном элементе массива, необходимо указать имя массива и порядковый номер этого элемента, называемый индексом Если возникает необходимость хранения данных в виде таблиц, в формате строки столбцов, то необходимо использовать двумерные массивы матрицы. Для доступа к данным, хранящимся в таком массиве, необходимо указать имя массива и два индекса первый должен соответствовать номеру строки, а второй номеру столбца, в которых хранится необходимый элемент. Значение нижней границы индексации в МАТLАВ равно единице. Индексы могут быть только целыми положительными числами. Самый простой способ задать одномерный массив в МАТLАВ имеет вид nаmе=Xn:dx:Xk где nаmе – имя переменной, в которую будет записан сформированный массив, Х - значение первого элемента массива, Х - значение последнего его элемента- шаг, с помощью которого формируется следующий элемент массива, то есть значение второго элемента составит Xn+dx, третьего Xn+dx+dx итак далее до
    Xk. Если параметр dx в конструкции отсутствует nаmе= Xn:Xk это означает, что по умолчанию он принимает значение, равное единице, то есть каждый следующий элемент массива равен значению предыдущего плюс один. Переменную, заданную как массив, можно использовать в арифметических выражениях ив качестве аргумента математических функций. Результатом работы таких операторов являются массивы. Упражнение 4 В командном окне

    Ввести вектор Х с начальным значением Xn=-3,5, шагом dx=1,5 и конечным значением Вычислить массив значений Y= sin(X/2)

    Ввести вектор A с начальным значением 0, шагом 1 и конечным значением 5

    Полученный листинг скопировать в отчет Листинг 4
    >>Xn=-3.5;dx=1.5;Xk=4.5;
    >> X=Xn:dx:Xk
    X=-3.5000 -2.0000 -0.5000 1.0000 2.5000 4.0000
    >> Y=sin(X/2)
    Y= -0.9840 -0.8415 -0.2474 0.4794 0.9490 0.9093
    >> A=0:5

    A=
    0 1 2 3 4 5 ans=A ans=
    0 1 2 3 4 5
    >> ans/2+pi ans=
    3.1416 3.6416 4.1416 4.6416 5.1416 5.6416 Поэлементный ввод векторов и матриц Для определения вектора-строки следует ввести имя массива, а затем, после знака присваивания, в квадратных скобках через пробел или запятую перечислить элементы массива. Элементы вектора-столбца вводятся через точку с запятой. Обратиться к элементу вектора можно, указав имя массива и порядковый номер элемента в круглых скобках. Упражнение 5 В командном окне

    Ввести вектор-строку V из пяти последовательных элементов 1, 2, 3, 2,1

    Ввести вектора-строки W из четырех последовательных элементов 1,1: 2,3; -
    0,1; 5,88

    Ввести вектор-столбец X из трех последовательных элементов 1, 2, 3;

    Вычислить формулу W
    1
    +2W
    3

    Полученный листинг скопировать в отчет Листинг 5
    >> V=[1 2 3 2 1]
    V=
    1 2 3 2 1
    >> W=[1.1,2.3,-0.1,5.88]
    W=
    1.1000 2.3000 -0.1000 5.8800
    >> X=[1;2;3]
    X=
    1 2
    3
    >> W(1)+2*W(3) ans=
    0.9000 Ввод элементов матрицы также осуществляется в квадратных скобках, при этом элементы строки отделяются друг от друга пробелом или запятой, асами строки разделяются между собой точкой с запятой. Обратиться к элементу
    матрицы можно, указав после имени матрицы в круглых скобках через запятую номер строки и столбца, на пересечении которых расположен элемент. Примеры задания матриц и обращение к их элементам показаны в листинге 7. Упражнение 6 В командном окне

    Ввести матрицу А, состоящую из трех строк потри элемента в каждой строка
    1: 1 2 3; строка 2: 4 5 6; строка 3: 7 8 9

    Вычислить формулу А в степени А деленное на А Полученный листинг скопировать в отчет Листинг 6
    >> A=[1 2 3;4 5 6;7 8 9]
    A=
    1 2 3 4 5 6 7 8 9
    >> A(1,2)^A(2,2)/A(3,3) ans=
    3.5556 Условный оператор if Для того чтобы иметь возможность реализовать логику в программе используются условные операторы. Умозрительно эти операторы можно представить в виде узловых пунктов, достигая которых программа делает выбор по какому из возможных направлений двигаться дальше. Например, требуется определить, содержит ли некоторая переменная arg положительное или отрицательное число и вывести соответствующее сообщение на экран. Для этого можно воспользоваться оператором if (если, который и выполняет подобные проверки. Оператор if-end if выражение операторы Если значение параметра выражение соответствует значению истинно, то выполняются операторы, иначе они пропускаются программой. Следует отметить, что выражение является условным выражением, в котором выполняется проверка некоторого условия. В таблице ниже представлены варианты простых логических выражений оператора if. Таблица. Простые логические выражения if a < b Истинно, если переменная a меньше переменной b и ложно в противном случае. if a > b Истинно, если переменная a больше переменной b и ложно в противном случае. if a == b Истинно, если переменная a равна переменной b и ложно в противном случае.
    if a <= b Истинно, если переменная a меньше либо равна переменной b и ложно в противном случае. if a >= b Истинно, если переменная a больше либо равна переменной b и ложно в противном случае. if a

    = b Истинно, если переменная a неравна переменной b и ложно в противном случае. Ниже представлен пример реализации функции sign(), которая возвращает +1, если число больше нуля, -1 – если число меньше нуля и 0, если число равно нулю Упражнение 7 В окне Редактора (Editor)

    Применить оператор if-end для программы, которая в зависимости от заданного значения переменной X присваивает переменной signX:
    - значение плюс, если значение переменной X больше нуля
    - значение минус, если значение переменной X меньше нуля
    - значение ноль, если значение переменной X равно нулю

    Записать программу в файл PR1-7_FIO_GR.m

    Определить переменную signX для трех значений X: 5, -3, 0

    Вывести значения Хи, используя оператор disp

    Текст программы и полученные листинги скопировать в отчет Программа
    X = 5; %X=-3; %X=0; disp(X); if x > 0 плюс end if x < 0 минус end if x == 0 ноль end disp(signX) Листинг 7
    5 плюс
    -3 минус
    0 ноль Оператор if-else-end if выражение операторы
    % выполняются, если истинно условие else операторы
    % выполняются, если условие ложно end Упражнение 8 В окне Редактора (Editor)


    Применить оператор if-else-end для программы, которая в зависимости от заданного значения переменной X присваивает переменной signX:
    - значение плюс, если значение переменной X больше нуля
    - значение минус, если значение переменной X меньше нуля
    - значение ноль, если значение переменной X равно нулю

    Записать программу в файл PR1-8_FIO_GR.m

    Определить переменную signX для трех значений X: 5, -3, 0

    Вывести значения Хи, используя оператор disp

    Текст программы и полученные листинги скопировать в отчет Программа
    X = 5; %X=-3; %X=0; disp(X); if x > 0 плюс else if x < 0 минус else ноль end end disp(signX) Листинг 8
    5 плюс
    -3 минус
    0 ноль Оператор if-elseif-end if выражение операторы
    % выполняются, если истинно выражение elseif выражение операторы
    % выполняются, если истинно выражение elseif выражение операторы
    % выполняются, если истинно выражение end Упражнение 9 В окне Редактора (Editor)

    Применить оператор if-else-end для программы, которая в зависимости от заданного значения переменной X присваивает переменной signX:
    - значение плюс, если значение переменной X больше нуля
    - значение минус, если значение переменной X меньше нуля
    - значение ноль, если значение переменной X равно нулю

    Записать программу в файл PR1-9_FIO_GR.m

    Определить переменную signX для трех значений X: 5, -3, 0

    Вывести значения Хи, используя оператор disp

    Текст программы и полученные листинги скопировать в отчет
    Программа
    X = 5; %X=-3; %X=0; disp(X); if x > 0 плюс % выполняется, если x > 0 elseif x < 0 минус
    % выполняется, если x < 0 else end ноль % выполняется, если x = 0 disp(signX) Листинг 9
    5 плюс
    -3 минус
    0 ноль Логические операторы Для реализации составных условий в MatLab используются логические операторы
    & - логическое И
    | - логическое ИЛИ

    - логическое НЕ Рассмотрим пример использования составных условий. Пусть требуется проверить попадание переменной x в диапазон от 0 до 2. Программа запишется следующим образом Упражнение 10 В окне Редактора (Editor)

    Применить оператор if-else-end с логическим оператором ‘&’ (И) для программы, которая проверяет попадание переменной Х в диапазон от 0 до 2. При попадании переменной valueX присваивается значение ‘TRUE’, в противном случае – ‘FALSE’

    Записать программу в файл PR1-10_FIO_GR.m

    Определить переменную valueX для двух значений X: 5, 1

    Вывести значения Хи, используя оператор disp

    Текст программы и полученные листинги скопировать в отчет Программа

    X = 5; %X=1; disp(X); if x >= 0 & x <= 2 valueX=‘TRUE’; else valueX=‘FALSE’; end disp(valueX)
    Листинг 10
    5
    FALSE
    1 Упражнение 11 В окне Редактора (Editor)

    Применить оператор if-else-end с логическим оператором ‘|’ (ИЛИ) для программы, которая проверяет выход переменной Х заграницы диапазона от 0 до 2. При выходе переменной valueX присваивается значение ‘TRUE’, в противном случае Записать программу в файл PR1-11_FIO_GR.m

    Определить переменную valueX для двух значений X: 5, 1

    Вывести значения Хи, используя оператор disp

    Текст программы и полученные листинги скопировать в отчет Программа
    X = 5; %X=1; disp(X); if x < 0 | x > 2 valueX=‘TRUE’; else valueX=‘FALSE’; end disp(valueX) Листинг 11
    5
    TRUE
    1 Круглые скобки в программировании используются для изменения приоритетов выполнения операторов. Подобно арифметическим операторам, логические также могут быть изменены пожеланию программиста. Благодаря использованию круглых скобок, сначала выполняется проверка внутри них, а, затем, за их пределами. Приоритет логических операций следующий
    - НЕ (

    ) – самый высокий приоритет
    - И (&) – средний приоритет
    - ИЛИ (|) – самый низкий приоритет. Оператор цикла while Язык программирования MatLab имеет два оператора цикла while и for. while условие операторы
    end Здесь условие означает условное выражение подобное тому, которое применяется в операторе if, и цикл while работает до тех пор, пока это условие истинно. Если условие будет ложным до начала выполнения цикла, то операторы, входящие в цикл, не будут выполнены ни разу. В операторе while можно записывать такие же условия, что ив условном операторе if. Упражнение 12 В окне Редактора (Editor)

    Применить оператор цикла while для подсчета суммы ряда. Суммирование выполнять до тех пор пока счетчик i не превышает 20, либо значение суммы S меньше
    20.

    При выходе переменной valueX присваивается значение ‘TRUE’, в противном случае – ‘FALSE’

    Записать программу в файл PR1-12_FIO_GR.m

    Вывести значения i и S, используя оператор disp

    Текст программы и полученные листинги скопировать в отчет Программа
    S = 0;
    % начальное значение суммы i=1;
    % счетчик суммы while i <= 20 & S <= 20 % цикл работает пока i<=20 и S<=20
    S=S+i;
    % подсчитывается сумма i=i+1;
    % увеличивается счетчик наконец цикла disp(i);disp(S)
    % отображение суммы 21 на экране Листинг 12
    5 Оператор цикла for При переборе значений счетчика в заданном диапазоне и с заданным шагом в программировании применяется оператор цикла for, который простои нагляднее реализует цикл со счетчиком. for счетчик = начальное значение>:<шаг>:<конечное значение операторы цикла end Упражнение 13 В окне Редактора (Editor)

    Применить оператор цикла for для нахождения наибольшего элемента вектора из четырех элементов 3, 6, 5, 3.

    Записать программу в файл PR1-13_FIO_GR.m

    Вывести номер и значение наибольшего элемента вектора, используя оператор disp

    Текст программы и полученные листинги скопировать в отчет Программа
    a = [3 6 5 3]; m = a(1);
    % текущее максимальное значение for i=1:length(a)
    % цикл от 1 до конца вектора с
    % шагом 1 (по умолчанию) if m < a(i)
    % если a(i) > m m = a(i);n=i;
    % то m = a(i) end
    % конец условного оператора if end disp(n);
    % конец цикла for disp(m); Листинг 13
    2 6 Отладка программы MATLAB Для графической отладки вашей программы MATLAB используйте редактор / отладчик. Кроме того, вы можете использовать функции отладки в окне команд. Оба метода являются взаимозаменяемыми. Прежде чем начать отладку, убедитесь, что ваша программа сохранена и что программа и любые файлы, которые она вызывает, существуют в вашем пути поиска или в текущей папке. Если вы запустите файл с несохраненными изменениями из редактора, то файл будет автоматически сохранен перед запуском. Если вы запустите файл с несохраненными изменениями из окна командной строки, то программное обеспечение MATLAB запустит сохраненную версию файла. Поэтому вы не видите результатов ваших изменений. Установить точку останова Установите точку останова выполнения файла MATLAB, чтобы проверить значение или переменные, в которых может быть проблема. Удобнее установить точку останова в Редакторе. Существует три различных типа точек останова стандартные, условные и ошибки. Чтобы добавить стандартную точку останова в редакторе, щелкните в колонке точек останова в строке исполняемого файла, в которой вы хотите установить точку останова. Колонка точек останова расположена справа от колонки с номерами строк. Вы также можете использовать клавишу F12 для установки точки останова. Исполняемые строки обозначены дефисом (-) в колонке точек останова. Например, щелкните в колонке точек останова рядом со строкой 2 в коде ниже, чтобы добавить точку останова в этой строке.
    Если исполняемый оператор занимает несколько строк, вы можете установить точку останова для каждой строки в этом операторе, даже если в дополнительных строках нет перемычки - (дефис) в колонке точек останова. Например, в этом коде. Вы можете установить точку останова на всех четырех строках Для получения дополнительной информации о различных типах точек останова см. Установка точек останова
    Запустить файл После установки точек останова запустите файл из окна команд или редактора. Запуск файла дает следующие результаты Кнопка Run изменится на кнопку Pause . Подсказка в окне командной строки изменится на указание того, что
    MATLAB находится в режиме отладки и что клавиатура находится под контролем делает паузу на первой точке останова в программе. В редакторе зеленая стрелка справа от точки останова указывает на паузу. Программа не выполняет строку, где происходит пауза, пока не возобновится работа. Например, здесь отладчик делает паузу перед выполнением программы x = ones(1,10);.

    MATLAB отображает текущее рабочее пространство в стеке вызовов функций на вкладке « Редактор » в разделе « Отладка ». Если вы используете функции отладки из окна команд, используйте dbstack для просмотра стека вызовов функций. Для получения дополнительной информации об использовании стека вызовов функций см. Выбор рабочей области.
    Приостановить запуск файла
    Чтобы приостановить выполнение программы вовремя ее работы, перейдите на вкладку « Редактор » и нажмите кнопку « Пауза . MATLAB приостанавливает выполнение наследующей исполняемой строке, а кнопка « Пауза превращается в кнопку « Продолжить . Чтобы продолжить выполнение, нажмите кнопку
    « Продолжить . Приостановка полезна, если вы хотите проверить ход выполнения долго работающей программы, чтобы убедиться, что она работает должным образом. Заметка Нажатие кнопки паузы может привести к паузе в MATLAB в файле, находящемся за пределами вашего собственного программного файла. Нажатие кнопки « Продолжить возобновляет нормальное выполнение без изменения результатов файла. Найти и устранить проблему Пока ваш код приостановлен, вы можете просматривать или изменять значения переменных, или вы можете изменить код. Просмотр или изменение переменной вовремя отладки Просмотрите значение переменной вовремя отладки, чтобы увидеть, дала ли строка кода ожидаемый результат или нет. Для этого поместите указатель мыши слева от переменной. Текущее значение переменной появляется в подсказке данных. Подсказка данных остается на виду, пока вы не переместите указатель. Если у вас возникли проблемы с отображением подсказки сданными, щелкните строку, содержащую переменную, а затем переместите указатель рядом с переменной. Для получения дополнительной информации см. Проверка значений при отладке
    Вы можете изменить значение переменной вовремя отладки, чтобы увидеть, дает ли новое значение ожидаемые результаты. Когда программа приостановлена, назначьте новое значение переменной в окне команд, браузере рабочей области или редакторе переменных. Затем продолжите выполнение или пошаговое выполнение программы. Например, здесь MATLAB находится в цикле for, где n = 2:
    Введите n = в командной строке, чтобы изменить текущее значение n от 2 до
    7. Нажмите Продолжить чтобы запустить следующую строку кода.
    MATLAB запускает строку кода x(n) = 2 * с n = 7. Изменить раздел кода вовремя отладки Вы можете изменить часть кода вовремя отладки, чтобы протестировать возможные исправления без необходимости сохранять изменения. Обычно рекомендуется изменить файл MATLAB после завершения отладки, а затем сохранить изменение и запустить файл. В противном случае вы можете получить неожиданные результаты. Однако есть ситуации, когда вы хотите поэкспериментировать вовремя отладки. Чтобы изменить программу вовремя отладки
    1. Пока ваш код приостановлен, измените часть файла, который еще не запущен. Точки останова становятся серыми, указывая на то, что они недействительны.
    2. Выделите весь код после строки, в которой MATLAB приостановлен, щелкните правой кнопкой мыши, а затем выберите « Оценить выделение в контекстном меню. После завершения оценки кода остановите отладку и сохраните или отмените любые изменения, сделанные перед продолжением процесса отладки.
    Шаг через файл Вовремя отладки вы можете пройтись по файлу MATLAB, делая паузу в тех местах, где вы хотите проверить значения. В этой таблице описаны доступные действия по отладке и различные методы, которые вы можете использовать для их выполнения. Описание Кнопка панели инструментов Функция Альтернатива Продолжайте выполнение файла до строки, в которой находится курсор. Также доступно в контекстном меню. Беги к курсору Никто Выполнить текущую строку файла. шаг Выполните текущую строку файла и, если строка является вызовом другой функции, перейдите в эту функцию. Шаг в dbstep in Возобновите выполнение файла до завершения или пока не будет обнаружена другая точка останова. Продолжить После входа запустите оставшуюся вызванную функцию или локальную функцию, выйдите из вызываемой функции и сделайте паузу. Выйти dbstep out Пауза в режиме отладки. Пауза Никто Выход из режима отладки. Выйти из отладки Завершить сеанс отладки После выявления проблемы завершите сеанс отладки, перейдя на вкладку « Редактор » и нажав « Выйти из отладки . Вы должны завершить сеанс отладки, если вы хотите изменить и сохранить файл, или если вы хотите запускать другие программы в MATLAB. После выхода из режима отладки индикаторы паузы на дисплее редактора больше не отображаются, а обычное приглашение снова появляется в окне команд вместо K>>. Вы больше не можете получить доступ к стеку вызовов. Если программное обеспечение MATLAB перестает отвечать на запросы, когда оно делает паузу в точке останова, нажмите Ctrl + c, чтобы вернуться к приглашению. Упражнение 14 В окне Редактора (Editor)

    Отладить программу. После исправленных команд вставить комментарии с исходными текстами команд.

    Записать программу в файл PR1-14_FIO_GR.m

    Текст отлаженной программы скопировать в отчет
    Программа
    array_1D=1:2:15; array_1d=[1 2 3 4;5 6 7 8;9 10 11 12];
    %2array_1d=[1 2 3 4;5 6 7 8;9 10 11 12] x=-pi:1e-2:2*pi; % x=-pi:1,e-2:2*pi; y1= x.^2 y2=x; %y1= x.^2; y2=x; for ii=1:1,2:5 %for ii=1:1.2:5 if ii>2 disp(ii) elseif ii = 3 j=ii-1 end end
    NN=1; while NN<100 %while Nn<100
    NN=NN+1; end for phi_0=0:0.1:pi %for phi_0=0:0,1:pi x = -2*pi: 2e-2: 2*pi; u = sin(x-phi_0) end
    Упражнение 15 Правильным результатом работы программы будет определение пересечений трех функций (переменная cross=3) В окне Редактора (Editor)

    Отладить программу. После исправленных команд вставить комментарии с исходными текстами команд.

    Записать программу в файл PR1-15_FIO_GR.m

    Текст отлаженной программы скопировать в отчет Программа Определить какие из функций
    %y1(x)= x*x-1 %y2(x)= sqrt(x) %y3(x)= cos(x)
    % пересекаются на интервале [0.5;2] clear; close all; clc; x=0,5; shethic=0; % счетчик корней cross=0; razn2=0; dx=2; while x <= 2 razn1=cos(x)- sqrt(x); % корень уравнения cos(x)=sqrt(x) if razn2*razn1 <0 shethic=shethic+1; end x=x+dx; % шаг цикла razn2=razn1; end if shethic>0 disp('cos(x) и sqrt(x) пересекаются '); end cross=cross+ shethic; shethic=0; razn2=0; % обнуляем переменные x=0.5; while x <= 2 razn1=cos(x)- x*x+1; % корень уравнения cos(x)=x*x+1 if razn2*razn1 <0 shethic=shethic+1; end x=x+dx; razn2=razn1; end if shethic>0
    disp('cos(x) и x*x-1 пересекаются '); end cross=cross+ shethic; shethic=0; razn2=0;% обнуляем переменные x=0.5; while x <= 2 razn1=sqrt(x)- x*x+1; % корень уравнения sqrt(x)=x*x+1 if razn2*razn1 <0 shethic=shethic+1; end x=x+dx; razn2=razn1; end if shethic>0 disp('sqrt(x) и x*x-1 пересекаются end cross=cross+ shethic; disp('cross');disp(cross); x = 0.5:0.0001:2; % шаги интервал y = cos(x); y2 = pow2(x) -1; y3 = sqrt(x); plot(x,y,x,y2,x,y3)% функция построения графика Упражнение 16 Правильным результатом работы программы будет определение пересечений трех функций (переменная cross=3) В окне Редактора (Editor)

    Отладить программу. После исправленных команд вставить комментарии с исходными текстами команд.

    Записать программу в файл PR1-16_FIO_GR.m

    Текст отлаженной программы скопировать в отчет Программа Определить какие из функций
    %y1(x)= x*x-1 %y2(x)= sqrt(x) %y3(x)= cos(x)
    % пересекаются на интервале [0.5;2] clear; close all; clc; x=0.5; shethic=0; % счетчик корней cross=0;
    razn2=0; dx=2; % шаг менять нельзя while x <= 2 razn1=cos(x)-sqrt(x); % корень уравнения cos(x)=sqrt(x) if razn2*razn1 <0 shethic=shethic+1; end x=x+dx; % шаг цикла razn2=razn1; end if shethic>0 disp('cos(x) и sqrt(x) пересекаются '); end cross=cross+ shethic; shethic=0; razn2=0; % обнуляем переменные x=0.5; while x <= 2 razn1=cos(x)- x*x+1; % корень уравнения cos(x)=x*x+1 if razn2*razn1 <0 shethic=shethic+1; end x=x+dx; razn2=razn1; end if shethic>0 disp('cos(x) и x*x-1 пересекаются '); end cross=cross+ shethic; shethic=0; razn2=0;% обнуляем переменные x=0.5; while x <= 2 razn1=sqrt(x)- x*x+1; % корень уравнения sqrt(x)=x*x+1 if razn2*razn1 <0 shethic=shethic+1; end x=x+dx; razn2=razn1; end if shethic>0 disp('sqrt(x) и x*x-1 пересекаются end cross=cross+ shethic;
    disp('cross');disp(cross); x = 0.5:0.0001:2; % шаги интервал y = cos(x); y2 = pow2(x) -1; y3 = sqrt(x); plot(x,y,x,y2,x,y3)% функция построения графика


    написать администратору сайта