Програмування в Mathcad

Основні конструкції мови програмування Mathcad. Дія умовного оператора if. Додаткова обробка помилок. Застосування операторів циклу for, while, break, continue. Приклади ефективного використання програмних модулів для чисельних і символьних розрахунків.

Рубрика Программирование, компьютеры и кибернетика
Вид лекция
Язык украинский
Дата добавления 16.02.2017
Размер файла 558,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Лекція

Програмування в Mathcad

Реалізувати той або інший алгоритм обчислення в пакеті Mathcad можна двома способами:

Ш вставляючи відповідні оператори або функції в текст документа Mathcad. Такий спосіб називається програмуванням в тексті документа;

Ш використовуючи так звані програми-функції, які містять конструкції, багато в чому подібні конструкціям таких мов як Pascal або FORTRAN: оператори привласнення, оператори циклів, умовні оператори і т.д. Написання програм - функцій в Mathcad дозволяє вирішити завдання, які неможливо вирішити використовуючи тільки оператори і функції Mathcad. Такий спосіб називатимемо програмуванням в програмі-функції. Таке програмування включає два етапи:

Ш опис програми-функції;

Ш виклик програми-функції.

Розглянемо окремо ці два етапи.

Перш ніж використовувати програму-функцію потрібно її задати, тобто виконати описи. Опис програми-функції розміщується в робочому документі перед викликом програми-функції і включає ім'я програми-функції, список формальних параметрів (який може бути відсутнім ) і тіло програми-функції. Розглянемо ці поняття.

Кожна програма-функція Mathcad має оригінальне ім'я, використовуючи яке здійснюється звернення до цієї програми-функції. Через це ж ім'я ( і лише через це ім'я ) “повертається” в робочий документ результат виконання програми-функції.

Після імені програми-функції йде список формальних параметрів, ув'язнений в круглі дужки. Через формальні параметри "всередину" програми-функції “передаються” дані необхідні для виконання обчислень усередині програми. Як формальні параметри можуть використовуватися імена простих змінних, масивів і функцій. Формальні параметри відділяються один від одного комою. Програма-функція може не мати формальних параметрів і тоді дані передаються через імена змінних, визначених вище за опис програми-функції.

Тіло програми-функції включає будь-яке число операторів локальних операторів привласнення, умовних операторів і операторів циклу, а також виклик інших програм-функцій і функцій користувача.

Порядок опису програми-функції Mathcad.

Для введення в робочий документ опису програми-функції необхідно виконати наступні дії:

Ш ввести ім'я програми-функції і список формальних параметрів, ув'язнений в круглі дужки;

Ш ввести оператора привласнення

Ш відкрити набірну панель Програмування і клацнути кнопкою “Add line” . На екрані з'явиться вертикальна межа і вертикальний стовпець з двома полями введення для введення операторів, створюючих тіло програми-функції (мал. 1).

Мал. 1. Структура програми-функції

оператор цикл чисельний символьний

Ш перейти в полі 1( клацнувши на ньому мишею або натиснувши клавішу [Tab]) і ввести першого оператора тіла програми-функції. Оскільки саме нижнє поле завжди призначено для визначення повертаного програмою значення, то поля введення для додаткових операторів відкриваються за допомогою клацання на кнопці “Add line” панелі програмування. При цьому полі введення додається внизу виділеного до цього моменту оператора. Для видалення того або іншого оператора або поля введення з тіла програми-функції, потрібно укласти його в ту, що виділяє рамку і нажимати клавішу [Delete] ( мал. 2) ;

Мал. 2. Додавання операторів в тіло програми-функції

Ш заповнити саме нижнє поле введення (поле 2), ввівши туди вираз, що визначає повертане через ім'я програми-функції значення (мал. 3 ).

У приведеному прикладі формальним параметром є проста змінна x, тіло програми включає двох локальних операторів привласнення і значення змінної z визначає повертаний через ім'я функції результат виконання програми-функції.

Мал. 3. Остаточна структура програми-функції

Для завдання усередині програми значення якої-небудь змінної використовується так званий локальний оператор привласнення, що має вигляд:

< ім'я - змінній > < вираз >

Для виконання програми-функції необхідно звернутися до імені програми-функції з вказівкою списку фактичних параметрів (якщо в описі програми присутній список формальних параметрів), тобто

< ім'я - програми > ( список фактичних параметрів )

Фактичні параметри указують при яких конкретних значеннях здійснюються обчислення в тілі програми. Фактичні параметри відділяються один від одного коми.

Очевидно, що між фактичними і формальними параметрами повинна бути відповідність по кількості, порядку проходження і типу. Остання відповідність означає:

Ш якщо формальним параметром є проста змінна, то як фактичний може використовуватися константа, змінна, арифметичний вираз;

Ш якщо формальним параметром є вектор або матриця, то фактичним повинні бути вектор або матриця;

Ш якщо формальним параметром є ім'я вбудованої функції або іншої програми, то і фактичним параметром повинен бути той же об'єкт.

Звернення до програми-функції повинне знаходитися після опису програми-функції і до моменту звернення фактичні параметри повинні бути визначені. v

Звернення до програми f(x), приведеній на мал. 3 може мати наступний вигляд:

Відмітимо, що змінна z ніяк не зв'язана з “локальної” змінної z, використовуваної усередині тіла програми-функції.

Основні конструкції мови програмування Mathcad

Умовний оператор (if, otherwise).

Дія умовного оператора if складається з двох частин. Спочатку перевіряється логічний вираз (умова) праворуч від нього. Якщо воно істинне, виконується вираз зліва від оператора if. Якщо помилково - нічого не відбувається, а виконання програми продовжується переходом до її наступного рядка. Вставити умовного оператора в програму можна таким чином:

Якщо необхідно, введіть ліву частину виразу і оператора привласнення.

Створіть новий рядок програмного коду, натиснувши на панелі Programming (Програмування) кнопку Add Line (Додати рядок).

Натисніть кнопку умовного оператора if.

Праворуч від оператора if введіть умову. Користуйтеся логічними операторами, вводячи їх з панелі Boolean (Булеві оператори).

Вираз, який повинен виконуватися, якщо умова виявляється виконаною, введіть зліва від оператора if. Якщо в програмі передбачаються додаткові умови, додайте в програму ще один рядок натисненням кнопки Add Line і введіть їх таким же чином, використовуючи оператора if або otherwise. Оператор otherwise використовується спільно з одним або декількома умовними операторами if і указує на вираз, який виконуватиметься, якщо жодне з умов не виявилося істинним.

Приклад:

Складемо програму-функцію, що обчислює функцію у(x). Для цього введемо опис наступної програми-функції:

Звернення до цієї програми-функції має вигляд

Оператори циклу (for, while, break, continue)

У мові програмування MATHCAD є два оператори циклу: for і while. Перший з них дає можливість організувати цикл по деякій змінній, примушуючи її пробігати деякий діапазон значень. Другою створює цикл з виходом з нього по деякій логічній умові. Щоб вставити в програмний модуль оператора циклу:

1. Створіть в програмному модулі нову лінію.

2. Вставте один з операторів циклу for або while натисненням однойменної кнопки на панелі Programming (Програмування).

3. Якщо вибраний оператор for, то вставте у відповідні местозаполнители ім'я змінної і діапазон її значень, а якщо while - те логічний вираз, при порушенні якого повинен здійснюватися вихід з циклу.

4. У нижній местозаполнитель введіть тіло циклу, тобто вирази, які повинні виконуватися циклічно.

5. При необхідності доповните програму іншими рядками і введіть в них потрібний код. Діапазон значень змінної в умові циклу for можна задати як за допомогою діапазону ранжируваної змінної, так і за допомогою вектора.

Оператор циклу for з ранжируваною змінною

Оператор циклу for з вектором

Оператор циклу while

Іноді необхідно достроково завершити цикл, тобто не по умові в його заголовку, а в деякому рядку в тілі циклу. Для цього призначений оператор break. Наприклад, в лістингу, як тільки значення змінної циклу i досягає 2, цикл, завдяки оператору break в останньому рядку програмного модуля, уривається. Відповідно, значення змінної х залишається рівним 0+1+2=3.

Оператор break усередині циклу for

Оператор break усередині циклу while

Щоб чітко позначити межі завершення тіла циклу, в його кінці може використовуватися додатковий рядок з оператором continue, який вводиться однойменній кнопкою панелі. Звично використовується для продовження виконання циклу шляхом повернення в початок тіла циклу. Складемо програму-функцію, що формує новий вектор з позитивних проекцій початкового вектора.

Повернення значення (return)

Перериває виконання програми-функції і повертає значення операнда, що стоїть за ним. Щоб підкреслити повернення програмним модулем певного значення, можна узяти за правило робити це в останньому рядку програмного модуля.

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

Разом з тим, можна перервати виконання програми в будь-якій її точці (наприклад, за допомогою умовного оператора) і видати деяке значення, застосувавши оператор return. В цьому випадку при виконанні вказаної умови значення, введене в местозаполнитель після return, повертається як результат, а ніякою інший код більше не виконується. Вставляється в програму оператор return за допомогою однойменної кнопки панелі Programming (Програмування).

Застосування оператора return

Перехоплення помилок (on error)

Програмування в MATHCAD дозволяє здійснювати додаткову обробку помилок. Якщо користувач припускає, що виконання коду в якому-небудь місці програмного модуля здатне викликати помилку (наприклад, ділення на нуль), то цю помилку можна перехопити за допомогою оператора on error. Щоб вставити його в програму, треба помістити лінії введення в ній в потрібне положення і нажинати кнопку з ім'ям оператора on error на панелі Programming (Програмування). В результаті з'явиться рядок з двома местозаполнителями і оператором on error посередині.

У правом местозаполнителе слід ввести вираз, який повинен виконуватися в даному рядку програми. У лівому - вираз, який буде виконаний замість правого виразу, якщо при виконанні останнього виникне помилка. Приведемо приклад застосування оператора on error в програмному модулі, який розраховує функцію зворотного числа значенню n. Якщо спробувати обчислити f(0), як в кінці лістингу, то виконання програми, закладеної в f (п), викличе помилку ділення на нуль в останньому рядку програми. Відповідно, замість виразу праворуч від оператора on error буде виконаний лівий вираз, що привласнює функції, f (п) строкове значення "user error: cannot divide by zero" (призначена для користувача помилка: ділення на нуль неможливе). Звичайно, цьому рядку можна привласнити і текст російською мовою.

Лістинг Перехоплення помилки ділення на нуль

Оператора перехоплення помилок зручно застосовувати в комбінації з вбудованою функцією error(S). Вона приводить до генерації помилки в звичайній для MATHCAD формі з повідомленням s. Звернете увагу, що зроблені зміни звелися до приміщення тексту повідомлення про помилку в аргумент функції error.

Приклади програмування

Розглянемо два прості приклади використання програмних модулів в MATHCAD для чисельних (лістинг 6.16) і символьних (лістинг 6.17) розрахунків. У двох приведених лістингах використовуються більшість операторів, розглянутих в даному розділі. Коли ви станете самі розробляти свої програмні модулі в MATHCAD, не забувайте, що оператори програмування вставляються в текст програми за допомогою кнопок панелі інструментів Programming (Програмування). Їх імена не можна у жодному випадку просто набивати на клавіатурі, оскільки вони не будуть сприйняті MATHCAD коректно.

Примітка

За допомогою засобів програмування можна створювати набагато складніші програми. Декілька прикладів достатньо ефективного застосування програмування ви знайдете в разд. "Фазовий портрет динамічної системи" гл. 11 і разд. "Різницеві схеми" гл. 12.

Лістинг Програмування в чисельних розрахунках

Лістинг Програмування в символьних розрахунках

Размещено на Allbest.ur

...

Подобные документы

  • Застосування циклічних алгоритмів для створення циклів за допомогою умовного або безумовного переходів. Цикли з параметром та умовою (приклади). Використання операторів мови програмування Паскаль для організації повторюваних послідовностей дій (циклів).

    контрольная работа [435,9 K], добавлен 02.06.2012

  • Основні переваги програмування на мові Delphi. Використання стандартних операторів при створенні інтерфейсу користувача. Вибір складу технічних і програмних засобів, організація вхідних і вихідних даних. Розробка програми, блок-схеми та тексту програми.

    реферат [316,1 K], добавлен 22.01.2013

  • Розгляд особливостей мови програмування С++: основні можливості, характеристика функцій. Аналіз файлів з вхідними даними. Використання похідних класів як ефективний засіб об’єктно-орієнтованого програмування. Способи роздруківки графічного вирішення.

    курсовая работа [510,9 K], добавлен 14.03.2013

  • Модель аналізу-синтезу компіляції. Формальний опис вхідної мови програмування. Вибір технології програмування, проектування таблиць транслятора та вибір структур даних. Опис програми реалізації лексичного аналізатора. Розробка дерев граматичного розбору.

    курсовая работа [75,8 K], добавлен 26.12.2009

  • Методика та порядок програмування алгоритмів циклічної структури із заданим числом повторень за допомогою мови програмування VAB. Алгоритм роботи з одновимірними масивами. Програмування алгоритмів із структурою вкладених циклів, обробка матриць.

    курсовая работа [27,7 K], добавлен 03.04.2009

  • Аналіз навігаційних технологій у сучасних AVL системах. Структура системи і вимоги до апаратного забезпечення, розробка алгоритмів функціонування окремих програмних модулів. Вибір мови програмування і СУБД. Тестовий варіант програмного забезпечення.

    дипломная работа [1,8 M], добавлен 17.12.2015

  • Основні відомості про історію розвитку мови Object Pascal, середовища Delphi, їх основні технології та застосування для роботи з файлами. Опис основних особливостей мови, основних елементів програмної мови. Принципи об'єктно-орієнтованого програмування.

    курсовая работа [471,5 K], добавлен 12.04.2010

  • Аналіз особливостей мови програмування Java та середовища Android Studio. Розробка програмного забезпечення для якісного та ефективного вивчення іноземних слів. Побудова базових алгоритмів і структури даних. Вибір мови програмування, реалізація програми.

    курсовая работа [335,3 K], добавлен 11.01.2015

  • Галузі застосування та принцип роботи мови програмування "Пролог". Керування процесом пошуку рішень, типи даних та використання списків. Рекурсивні процедури та цикли за допомогою пошуку з поверненням. Виконання арифметичних та логічних операцій.

    курс лекций [99,7 K], добавлен 06.07.2011

  • Розробка програми на мові програмування С++ з використанням об'єктно-орієнтованого програмування. Робота з файлами, графікою, класами, обробка числової інформації. Графічні засоби мови програмування. Алгоритм задачі та допоміжні програмні засоби.

    курсовая работа [102,5 K], добавлен 14.03.2013

  • Використання графічного методу і симплекс-методу при вирішенні задач лінейного програмування. Сутність двоякого симплекс-методу і М-методу, приклади використання. Аналіз методу динамичного програмування. Специфіка вирішення матричної, антагоністичної гри.

    контрольная работа [1,1 M], добавлен 02.07.2011

  • Правильний оператор присвоювання. Доведення тотожності від зворотного, припускаючи протилежний результат. Пояснення існування залежності (тотожності). Пошук помилок у програмі шляхом написання та перевірки її допомогою мови програмування Pascal.

    контрольная работа [655,5 K], добавлен 04.11.2013

  • Алгоритми розв’язання задач у вигляді блок–схем. Використання мови програмування MS VisualBasic for Application для написання програм у ході вирішення задач на одномірний, двовимірний масив, порядок розв’язання задачі на використання символьних величин.

    контрольная работа [742,9 K], добавлен 27.04.2010

  • Мoвa прoгрaмувaння як систeма пoзначень, що служить для точного опису програм або алгоритмів для ЕOM. Вимоги до мов програмування, класифікація за їх особливостям. Загальна характеристика найбільш поширених мов програмування: Сі, Паскаль, Delphi, Бейсік.

    реферат [24,4 K], добавлен 10.11.2012

  • Розв’язання системи лінійних та нелінійних рівнянь у програмі MathCAD. Матричний метод розв'язання системи рівнянь. Користування панеллю інструментів Математика (Math) для реалізації розрахунків в системі MathCAD. Обчислення ітераційним методом.

    контрольная работа [1023,4 K], добавлен 08.04.2011

  • Методи використання предикатів Cut, Fail. Організація циклу (repeat), складання програми. Алгоритм роботи зі списками та рядками. Елементарні операції і базові функції мови програмування Лісп. Робота зі складними типами даних на прикладі бази даних АТС.

    контрольная работа [219,3 K], добавлен 17.06.2011

  • Навчальний матеріал у вигляді практичних робіт, які охоплюють базові розділи програмування, містять короткі теоретичні відомості та приклади програм, які допоможуть у роботі над вирішенням завдань з програмування. Варіанти завдань для контролю знань.

    учебное пособие [753,6 K], добавлен 16.01.2011

  • Основні принципи об’єктно-орієнтованого програмування. Типові середовища програмування та особливості мови С++. Етапи проектування БД. Розробка програмного забезпечення для реалізації створення бази відеофільмів. Основні положення та моделі БД.

    курсовая работа [2,7 M], добавлен 24.03.2011

  • Основні аспекти використання стандартних компонентів ООС програмування Delphi для створення звітної документації. Опис компонентів – QReport, PrintDialog та PrintSetupDialog. Приклади створення звітів. Iнше програмне забезпечення для побудови звітів.

    курсовая работа [488,4 K], добавлен 08.12.2008

  • Об’єктно-орієнтоване програмування мовою С++. Основні принципи об’єктно-орієнтованого програмування. Розробка класів з використанням технології візуального програмування. Розробка класу classProgressBar. Базовий клас font. Методи тестування програми.

    курсовая работа [211,3 K], добавлен 19.08.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.