- •6.050701 - “Електротехніка та електротехнології”,
- •6.100101 - “Енергетика та електротехнічні системи
- •6.050701 - “Електротехніка та електротехнології ”.
- •6.100101 - “Енергетика та електротехнічні системи
- •Лабораторна робота № 1 Побудова блок-схем алгоритмів
- •Лабораторна робота № 2 Прості обрахунки в Mathcad
- •Функція – вираз, відповідно до якого проводяться деякі обчислення з аргументами й визначається його чисельне значення.
- •Текстові фрагменти являють собою куски тексту, які користувач хотів би бачити у своєму документі. Існують два види текстових фрагментів:
- •Лабораторна робота № 3 Рішення рівнянь засобами Mathcad
- •Лабораторна робота № 4 Логічні операції та використання виразів відношень в пакеті Mathcad
- •Лабораторна робота № 5 Оператори Add line та локальне присвоювання в пакеті Mathcad
- •Лабораторна робота № 6 Оператори if та otherwise в пакеті Mathcad
- •Лабораторна робота № 7 Оператор for та циклічні алгоритми типу арифметичної прогресії в пакеті Mathcad
- •Лабораторна робота № 8 Оператор while та циклічні ітераційні алгоритми в пакеті Mathcad
- •Лабораторна робота № 9 Спеціальний оператор припинення розрахунку break в пакеті Mathcad
- •Лабораторна робота № 10 Додатковий оператор програмування циклів continue в пакеті Mathcad
- •Лабораторна робота № 11 Додатковий оператор програмування циклів return в пакеті Mathcad
- •Лабораторна робота № 12 Додатковий оператор програмування циклів on error та функція error в пакеті Mathcad
- •Лабораторна робота № 13 Модульне програмування в межах одного документа Mathcad
- •Лабораторна робота № 14 Модульне програмування у декількох документах Mathcad
- •Рекомендована література
Лабораторна робота № 1 Побудова блок-схем алгоритмів
Мета роботи: Навчитись будувати блок-схеми алгоритмів задач для створення програм.
Теоретичні відомості
Обробка інформації, є однією з основних операцій, що виконуються над інформацією, і головним засобом збільшення її об'єму і різноманітності. Засоби обробки інформації – це всілякі технічні пристрої і системи, створені людиною. В першу чергу, це комп'ютер – універсальна машина, оброблювальна інформацію шляхом виконання певних алгоритмів.
Алгоритм - система точно сформульованих правил, що визначає процес перетворення припустимих вихідних даних (вхідної інформації) у бажаний результат (вихідну інформацію) за кінцеве число кроків.
В алгоритмі відбиваються логіка та спосіб формування результатів рішення із вказівкою необхідних розрахункових формул, логічних умов, співвідношень для контролю вірогідності вихідних результатів. В алгоритмі обов'язково повинні бути передбачені всі ситуації, які можуть виникнути в процесі рішення комплексу завдань.
Реалізувати алгоритм обчислення в пакеті Mathcad можна двома способами:
- вставляючи відповідні оператори або функції в текст документа Mathcad. Такий спосіб називається програмуванням у тексті документа;
- використовуючи так звані програми-функції, які містять конструкції, багато в чому подібні до конструкцій таких мов як Pascal або FORTRAN: оператори присвоювання, оператори циклів, умовні оператори та ін. Написання програм - функцій в Mathcad дозволяє вирішити задачі, які неможливо вирішити використовуючи тільки оператори та функції Mathcad. Такий спосіб має назву програмуванням у програмі-функції.
Алгоритм рішення комплексу завдань і його програмна реалізація тісно взаємозалежні. Специфіка застосованих методів проектування алгоритмів і використаних при цьому інструментальних засобів розробки програм може вплинути на форму подання та зміст алгоритму обробки даних.
Виконавець алгоритму – це деяка абстрактна або реальна технічна, біологічна або біотехнічна система, здатна виконувати дії, що передбачені алгоритмом.
В якості виконавеця алгоритму може бути людина, тварина і автоматичний пристрій. У інформатиці універсальним виконавцем алгоритмів є комп'ютер.
Виконавця характеризують:
середовище (або обстановка);
система команд – кожен виконавець може виконувати команди тільки з деякого строго певного списку. Для кожної команди повинні бути задані умови її застосовності (у яких станах середовища може бути виконана команда) і описані результати її виконання;
елементарні дії – прості операції, які виконавець здійснює після виклику відповідної команди;
відмови – неможливість виконання тієї або іншої дії, якщо команда викликається при неприпустимому для неї стані середовища.
Зазвичай виконавець нічого не знає про мету алгоритму. Він виконує всі отримувані команди, не ставлячи питань "чому" і "навіщо".
Вивчення алгоритмів є специфікою науки про обчислення. Останнім часом тут були досягнуті значні успіхи. До основних проблем, що вивчаються цією наукою, можна віднести наступні:
пошук нових і поліпшення існуючих алгоритмів;
математичне дослідження ефективності алгоритмів;
розробка математичних методів доказу того, що даний алгоритм є "як найкращим з можливих";
узгодження положень теорії обчислень з практичними міркуваннями.
До основних властивостей алгоритму належать:
Зрозумілість (доступність) – алгоритм повинен зважати на специфіку виконавця, при необхідності йому повинні надаватися додаткові відомості;
Дискретність (роздільність) – виконання кожного чергового кроку алгоритму повинне розпочинатися лише після повного завершення попереднього кроку;
Детермінована (визначеність) – виконання алгоритму виконавцем носить механічний характер, тобто вибір кожного чергового кроку алгоритму залежить не від переваг виконавця, а від результатів, досягнутих їм на попередньому кроці;
Результативність (закінченість) – або рішення задачі досягається за кінцеве, хоч би і велике, число кроків, або робиться виведення про неможливість продовження виконання алгоритму з тієї або іншої причини (є алгоритми, що не володіють цією властивістю, – наприклад, обчислення ірраціонального числа );
Масовість – якщо алгоритм дозволяє вирішити деяку задачу, то він повинен бути застосований для цілого класу подібних завдань, що розрізняються лише наборами початкових даних, областей, що створюються для застосування алгоритму (є алгоритми, що не володіють цією властивістю, оскільки деколи неможливо організувати ще один набір початкових даних або через їх унікальність, або у зв'язку із значними витратами часу, фінансів або матеріальних ресурсів).
На практиці використовуються наступні форми представлення алгоритмів:
Словесний запис – неформалізований запис алгоритму на природній мові, наприклад, рецепт приготування манної каші;
Псевдокод – напів формалізований опис алгоритму на базі одного з квазі-мов програмування, які застосовуються в тих випадках, коли немає можливості викладати основи алгоритмізації з використанням ЕОМ;
Комп'ютерна програма – жорстко формалізований запис алгоритму, орієнтований на виконавця – ЕОМ. Це єдина форма запису алгоритму, доступна для розуміння комп'ютером. Для розробки комп'ютерних програм використовуються інструментальні засоби, так звані мовами програмування;
Блок-схема – найбільш наочна графічна форма представлення алгоритмів, використовувана професіоналами особливо в тих випадках, коли алгоритм володіє витонченою логікою виконання;
Вигляд основних елементів блок-схеми:
- блок початку та кінця алгоритму;
- блок вводу та виводу значень змінних та символьних величин;
- блок обробки інформації;
- блок порівняння;
- блок формування циклу;
- блок переносу з’єднувальних ліній на одній сторінці;
- блок переносу з’єднувальних ліній з однієї сторінки на іншу.
Блок-схема кожної програми являє собою структурний план, відповідно до якого буде здійснюватися розрахунок необхідних у завданні параметрів.
При розробці алгоритму необхідно застосовувати такі технологічні рекомендації, при дотриманні яких алгоритм виходив би найбільш зрозумілим, а помилки при записі алгоритму у вигляді програми були б найменше вірогідні. Відповідно до сучасних переконань в сьогоднішній технології розробки програм, які є однією із сторін методу структурного програмування, алгоритм повинен бути структурований. Він включає в свій склад тільки базові структури, яких всього три: проходження, розгалуження і цикл.
Приклад: Запис алгоритму Евкліда знаходження найбільшого спільного дільника (НСД) для двох натуральних чисел у трьох перерахованих вище формах представлення.
Словесний запис:
|
Псевдокод:
|
1. Задати два числа. |
алг НСД поч ввід a; b |
2. Якщо числа рівні, то узяти перше з них як відповідь і припинити виконання алгоритму, інакше йти до пункту 3. |
S: якщо a = b тоді йти до F |
3. Визначити більше з двох чисел. 4. Замінити більше число на різницю між більшим і меншим числами. |
якщо a < b тоді b:= b-a інакше a:= a-b |
5. Йти до пункту 2. |
йти до S F: вивід a кін |
Блок-схема:
Рис. 1. Блок-схема запису алгоритму Евкліда знаходження найбільшого спільного дільника (НСД) для двох натуральних чисел.
Завдання на лабораторну роботу
1. Розробити алгоритм розв’язку квадратичного рівняння та представте його у трьох формах „словесний запис”, „псевдокод” та „блок-схема”.
Дискримінант
обраховують за формулою:
.
Розв’язок
рівняння: якщо D>0,
то
,
якщо D=0,
то
,
а якщо D<0,
то розв’язків рівняння не існує.
2. Розробити алгоритм визначення більшого значення з трьох чисел a, b, c та та представте його у формі „блок-схема”.
Програма виконання роботи
1. Ознайомитись з інформацією, що викладена в теоретичних відомостях.
2. Проаналізувати та зробити приклад, що наведено в лабораторній роботі.
3. Виконати завдання на лабораторну роботу.
4. Оформити результати у формі звіту.
Виконати завдання на лабораторну роботу і результати зберегти у власній папці.
Оформлення звіту
Звіт повинен містити:
- назву та мету роботи;
- наведений приклад;
- алгоритм розв’язку квадратичного рівняння представлений у трьох формах „словесний запис”, „псевдокод” та „блок-схема”;
- алгоритм визначення більшого значення числа з трьох чисел представлений у формі „блок-схема”;
- висновки по роботі з аналізом блок-схем використаних у роботі.
Запитання для самоперевірки
1. Дайте визначення терміна „блок-схема”?
2. Дайте визначення терміна „псевдокод”?
3. Назвіть форми представлення алгоритмів?
4. Які основні властивості алгоритму ви знаєте?
5. Дайте визначення терміна „виконавець алгоритму”?
6. Дайте визначення терміна „алгоритм”?
7. Назвіть основні проблеми науки про обчислення?
