1 / 18

Лекція 3 . Символьні розрахунки в Matlab . Пакет MuPAD . Елементи програмування

Лекція 3 . Символьні розрахунки в Matlab . Пакет MuPAD . Елементи програмування. Умовний оператор if. Повна форма. Скорочена форма. if умова then команди else команди end_if. if умова then команди end_if. Приклад використання. f:=x->if x<0 then x^2 * exp (x)

gwyn
Download Presentation

Лекція 3 . Символьні розрахунки в Matlab . Пакет MuPAD . Елементи програмування

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Лекція 3. Символьні розрахунки в Matlab. ПакетMuPAD. Елементи програмування

  2. Умовний операторif Повна форма Скорочена форма if умоваthen команди else команди end_if if умоваthen команди end_if Приклад використання f:=x->if x<0 then x^2*exp(x) else sin(2*PI*x)^4*exp(-x^2) end_if

  3. Умовний операторif(продовження)

  4. Логічні оператори

  5. Оператори порівняння

  6. Вкладеніумовні операториif Загальна форма if умоваthenкоманди else if умоваthenкоманди else if умоваthen команди else команди end_if end_if end_if Замість конструкції else if ... end_ifвикористовуємо інструкцію elseif Альтернативна форма if умоваthen команди elifумоваthen команди elifумоваthen команди else команди end_if

  7. Умовний оператор - приклад Повна форма f:=x->if x<0 or x>4 thencos(2*PI*x)^2 else if x<1 then1-x^2 else if x<3 thensin(2*PI*x) else x-3 end_if end_if end_if Скорочена форма f2:=x->if x<0 or x>4 then cos(2*PI*x)^2 elifx<1 then 1-x^2 elifx<3 then sin(2*PI*x) else x-3 end_if

  8. Операторвибору Загальна форма case вираз of значення_1do команди_1 of значення_2do команди_2 ... otherwise команди end_case Виконуються всі команді від місця, де є співпадіння значень, і до кінця оператора (інструкція end_case). Для завершенняcase-блоку використовують інструкцію break. Блок otherwiseне є обов'язковим

  9. Операторвибору Приклад використання GetColor:=x-> case x of 1 do print(Unquoted,"1 - означаетКРАСНЫЙ"); break of 2 do print(Unquoted,"2 - означаетЖЕЛТЫЙ"); break of 3 do print(Unquoted,"3 - означаетЗЕЛЕНЫЙ"); break otherwise print(NoNL,x); print(Unquoted," - не знаю такого цвета") end_case Послідовність команд розділяється крапкою з комою (тобто ;). Ключове слово NoNL є абревіатурою від NoNewLine.

  10. Операторвибору Приклад використання TestNumber:=x-> case x of 1 do of 2 do of 3 do of 5 do of 8 do print(Unquoted,"Это число Фибоначчи!"); break of 6 do print(Unquoted,"Совершенное число: 6=1+2+3 и 6=1*2*3"); break otherwise print(Unquoted,"Ничегоинтересного!") end_case

  11. Операторциклу for Загальна форма forзміннаfromзначення_1toзначення_2stepзначення_3do команди end_for forзміннаinмножинаdo команди end_for Крок инкрементуstepвказувати не обов'язково. В цьому випадку індексна змінна збільшується на одиницю. Щоб змінна зменшувалась, замість toвикористовуємо інструкцію downto.

  12. Операторциклу for Приклад використання Fib:=n->( a:=1; b:=1; for k from 3 to n do b:=a+b; a:=b-a; end_for; b)

  13. Операторициклу while таrepeat Загальна форма while умоваdo команди end_while Різниця в тому, коли перевіряється умова. Для while - умова продовження виконання, для repeat - умова завершення виконання repeat команди until умоваend_repeat

  14. Операторициклу while таrepeat Приклади використання a:=1: b:=1: i:=2: print(NoNL,a); print(NoNL," "); print(NoNL,b); while i<20 do b:=a+b: a:=b-a: print(NoNL," "); print(NoNL,b); i:=i+1: end_while: a:=1: b:=1: i:=2: print(NoNL,a); print(NoNL," "); print(NoNL,b); repeat b:=a+b: a:=b-a: print(NoNL," "); print(NoNL,b); i:=i+1: until i>=20 end_repeat:

  15. Створення процедури Загальна схема ім'я_процедури:=proc(аргументи) localлокальні_змінні; begin команди end_proc Якщо процедура повертає результат, використовують інструкцію return(). Значення, що повертається процедурою, вказується аргументом інструкції

  16. Створення процедури Приклад застосування FibNums:=proc(n) local i,a,b; begin a:=1: b:=1: for i from 3 to n do b:=a+b: a:=b-a: end_for: return(b); end_proc:

  17. Створення процедури Приклад застосування FNums:=proc(n) begin if n=1 or n=2 then return(1): else return(FNums(n-1)+FNums(n-2)): end_if: end_proc

  18. Зауваження В якостізавершальноїінструкціїзамістьключовихслівend_for, end_while, end_repeat, end_if, end_caseта end_procу відповіднихмісцяхможнавикористовуватиключове слово end

More Related