- •Лабораторний практикум
- •Міністерство освіти і науки україни національний університет “львівська політехніка” лабораторний практикум з дисципліни
- •0. Методичні вказівки до оформлення звітів з лабораторних робіт 6
- •1. Лабораторна робота №1
- •Передмова.
- •0.Методичні вказівки до оформлення звітів з лабораторних робіт
- •Розділ і. Базові структури алгоритмів.
- •1.Лабораторна робота №1
- •1.1Перелік питань, які необхідно вивчити.
- •1.2Завдання.
- •1.3Методичні вказівки до виконання роботи № 1.
- •1.4Приклад виконання завдання.
- •1.4.1Постановка задачі.
- •1.4.2Розробка структури даних.
- •1.4.7Висновки.
- •2.Лабораторна робота №2
- •2.1Перелік питань, які необхідно вивчити.
- •2.2Завдання.
- •2.3Приклад виконання завдання.
- •2.3.1Постановка задачі.
- •2.3.2Розробка структури даних.
- •2.3.3Розробка блок-схеми алгоритму.
- •2.3.4Перевірка блок-схеми.
- •2.3.5Запис тексту програми.
- •3.1.2Виведення даних.
- •3.2Завдання.
- •3.3Методичні вказівки до лабораторної роботи.
- •3.3.1Постановка задачі.
- •3.3.2Розробка структури даних.
- •3.3.3Розробка алгоритму.
- •3.3.4Розробка програми.
- •Розділ іі. Використання числових і символьних змінних
- •4.3Методичні вказівки до роботи.
- •4.3.1Методи переведення в двійкову систему числення.
- •4.3.1.1Метод ділення.
- •4.3.1.2Метод віднімання.
- •4.3.1.3Метод маскування або логічного множення.
- •5.Лабораторна робота №5.
- •5.1Теоретичні відомості.
- •5.1.1Відомості з математики.
- •5.1.2Відомості з програмування.
- •5.2Завдання.
- •Розділ ііі. Циклічні алгоритми
- •6.Лабораторна робота №6
- •6.1Перелік питань, які необхідно вивчити для виконання роботи.
- •6.2Завдання.
- •6.3Приклад виконання завдання.
- •6.3.1Постановка задачі.
- •6.3.2Розробка структури даних.
- •6.3.3Розробка алгоритму
- •6.3.4Текст програми.
- •7.3Приклад виконання завдання.
- •7.3.1Постановка задачі.
- •7.3.2Розробка структури даних.
- •7.3.3Розробка алгоритму
- •7.3.4Текст програми мовою Pascal.
- •8.3Методичні вказівки до виконання роботи.
- •8.3.1Постановка задачі.
- •8.3.2Розробка структури даних.
- •8.3.3Розробка алгоритму.
- •Розділ іv. Обробка і використання масивів
- •9.3Приклад виконання завдання.
- •9.3.1Постановка задачі.
- •9.3.2Розробка структури даних.
- •9.3.3Розробка алгоритму.
- •9.3.4Запис тексту програми.
- •11.1.2Програмна реалізація розріджених масивів.
- •11.1.3Метод Гауса обчислення визначника матриці довільного розміру n*n.
- •11.2Завдання.
- •11.3Приклад алгоритму обчислення детермінанту.
- •Розділ V. Методи комп’ютерної графіки
- •12.Лабораторна робота №12.
- •12.1Теоретична частина
- •12.1.1Відомості з програмування.
- •12.1.2Перелік питань, які необхідно вивчити для виконання роботи.
- •12.2Завдання до лабораторної роботи.
- •12.3Методичні вказівки до виконання роботи
- •13.Лабораторна робота №13.
- •13.1Теоретична частина.
- •13.1.1Числовий опис зображення.
- •13.1.2Перетворення координат точки при її відображеннях.
- •13.1.3Питання, які необхідно вивчити.
- •13.2Завдання.
- •13.3Методичні вказівки до виконання роботи.
- •13.3.1Постановка задачі.
- •13.3.2Розробка структури даних.
- •13.3.3Розробка алгоритму.
- •13.3.4Запис тексту програми.
- •13.3.5Налагодження та результати тестування.
- •14.Лабораторна робота №14
- •14.1Перелік питань, які необхідно вивчити для виконання роботи.
- •14.2Теоретичні відомості.
- •14.3Завдання до лабораторної роботи.
- •Розділ VI. Деякі математичні методи
- •15.Лабораторна робота №15
- •15.1Теоретична частина.
- •15.1.1Основні статистичні характеристики.
- •15.1.2Гістограма розподілу числових даних.
- •15.1.3Питання, які необхідно вивчити для виконання роботи.
- •15.2Завдання.
- •16.2Завдання.
- •16.3Методичні вказівки до виконання роботи.
- •16.3.1Постановка задачі.
- •16.3.2Розробка структури даних.
- •16.3.3Розробка алгоритму.
- •16.3.4Написання тексту програми.
- •17.1.2Системи диференційних рівнянь.
- •17.1.3Форми подання результатів.
- •17.1.4Питання, які необхідно вивчити.
- •17.2Завдання.
- •17.3Методичні вказівки до виконання роботи.
- •17.3.1Постановка задачі.
- •17.3.2Розробка структури даних.
- •17.3.3Розробка алгоритму.
- •17.3.4Написання тексту програми.
- •17.3.5НАлагодження і тестування.
- •Список літератури.
0.Методичні вказівки до оформлення звітів з лабораторних робіт
Виконання завдань кожної роботи і звіти з них складаються з п’яти розділів, які спрощено відповідають етапам розробки програмної продукції, що зафіксовані Єдиною системою програмної документації.
Перший розділ - “постановка задачі” - містить повний опис взємодії програми з користувачем, а також опис методів обчислень. В цьому розділі необхідно перелічити вхідні дані програми, вказати, які значення та повідомлення будуть виводитись на друк або на екран, при необхідності подати ескіз полів виводу даних на екрані. При описі методів обчислень необхідно вивести кінцеві розрахункові формули або рівняння для обчислення результату, вказати рекомендовані методи розв’язку рівнянь. Необхідно також вказати критерій оптимізації розроблюваної програми (кількість виконуваних операцій, час виконання, обсяг використаної пам’яті, обсяг тексту програми) та шляхи досягнення оптимального рішення. Перший розділ обов’язково виконується природною мовою з використанням загальноприйнятих математичних (не програмних!) позначень.
В умовах промислового виготовлення програмної продукції постановка задачі є самостійним документом - технічним завданням на програмування.
Другий і третій розділи “розробка структури даних” та “розробка алгоритму” фіксують дві різні складові одного неподільного процесу розробки програми, а саме: відведення пам’яті для зберігання значень, необхідних при розрахунках (впровадження і позначення змінних) та встановлення порядку обробки цих значень.
Результати “розробки структури даних” фіксуються у вигляді таблиці:
Табл. 0.1. Структура даних.
Позначення в задачі |
Ім’я в пограмі |
Тип |
Призначення |
1 |
2 |
3 |
4 |
В колонку 1 заносяться позначення змінних, використані в першому розділі при математичному описі задачі, або ставиться прочерк, коли задача поставлена природною мовою. Колонка 2 містить імена змінних і заповнюється при виконанні 4-го розділу, оскільки імена залежать від обраної мови програмування. Для зменшення ймовірності похибок і полегшення розуміння програми необхідно вводити мнемонічні імена, написання яких або подібне до позначення, або натякає на призначення. В колонці 3 описується тип змінної (ціла, дійсна, символьна), необхідний для реалізації її призначення. Тип може уточнюватись в залежності від обраної мови програмування. Для структурованих змінних із однотипних елементів (масиви, стеки, файли) описується розмір, тип і границі індексу а також тип елементів. Індекси описуються також як окремі змінні. Для записів окремо описується тип і призначення кожного поля. Колонка 4 містить опис (по можливості природньою мовою), який пов’язує відповідну змінну з поставленою задачею (наприклад: номер рядку, n-ий член ряду, аргумент, запит оператору). Змінні, значення яких вводяться ззовні, або повідомляються користувачу чи іншій програмі, додатково позначаються як “вхідна” або “вихідна” відповідно. Результати “розробки алгоритму” подаються у вигляді блок-схеми алгоритму з використанням таких позначень:
Рис. 0.1. Умовні позначення для виконання блок-схем.
При складанні алгоритму необхідно додержуватися правил структурного програмування, тобто використовувати тільки стандартні керуючі структури: послідовність (Рис. 0 .2); альтернатива (Рис. 0 .3); цикли “поки”, “до” і з параметром (Рис. 0 .4).
Рис. 0.2. Послідовність.
Рис. 0.3. Альтернатива.
Рис. 0.4. Цикли.
Кожна з описаних структур має один вхід і один вихід, що дозволяє об’єднувати їх в необхідній послідовності. Крім того, “дії”, вказані в кожній зі структур, можуть бути як операторами, так і керуючими структурами будь-якого типу. Така побудова алгоритму забезпечує краще розуміння послідовності дій, зменшення ймовірності помилки, зменшення кількості операторів безумовного переходу при написанні тексту програми.
При складанні алгоритму необхідно виконати такі вимоги:
виводити на екран вхідні дані безпосередньо після їх введення;
не модифікувати вхідні дані до завершення програми;
формувати значення результату в пам’яті ЕОМ (у відведених для цього змінних) і тільки по завершенні розрахунків виводити на друк;
визначати і позначати на блок-схемі контрольні точки, тобто місця, в яких зручно було б вставляти друк проміжних значень змінних при налагоджуванні програми.
У четвертому розділі - “запис тексту програми” – наводиться текст розробленої програми на мові Паскаль. Обов’язковою вимогою до текстів програм є наявність коментарів, які вказують початок та закінчення керуючих структур та функціональне призначення окремих команд програми. Коментарі описуються у фігурних дужках в Паскалі: {Це коментар}.
В записі тексту програми пропуски позначаються знаком , цифри 0, 3, 5 перекреслюються, літери записуються шрифтом, який би виключав їх неоднозначне прочитання (наприклад: е, l; B, 8;1,I,T).
В тексті Паскаль-програми необхідно вводити різну кількість відступів від початку рядку для виділення дій, які відносяться до різних керуючих структур. Самі керуючі структури однозначно записуються за допомогою стандартних операторів мови Паскаль з використанням складеного оператору begin...end.
Текст кожної підпрограми (якщо вони використовуються) виділяється підзаголовком-коментарем.
Останній розділ - “налагодження та результати тестування” - оформлюється під час виконання лабораторної роботи. Розділ містить перелік помилок, виявлених під час трансляції та виконання програми з поданням виправленого варіанту, а також результати розрахунків тестових прикладів.
Тестових прикладів має бути мінімум два: наведений у завданні до роботи, та з іншими вхідними даними. Дані для тестів необхідно вибрати так, щоби були використані всі розгалуження блок-схеми.
В кінці звіту студенти записують декілька власних висновків, які вони зробили в процесі розробки, запису та виконання програми.
