- •Лабораторний практикум
- •Міністерство освіти і науки україни національний університет “львівська політехніка” лабораторний практикум з дисципліни
- •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НАлагодження і тестування.
- •Список літератури.
4.3.1Методи переведення в двійкову систему числення.
4.3.1.1Метод ділення.
Загальним правилом переводу числа методом ділення є послідовне виконання таких операцій:
а) цілочисельне ділення заданого числа Ap на основу P тої системи, в яку переводиться дане число Ap, і фіксація частки та остачі.
б) якщо частка не рівна нулю, її треба взяти за нове число і повторити операцію п. а), інакше перейти до п. в)
в) виписати всі остачі у зворотньому порядку,починаючи з останньої і взяти їх за цифри шуканого числа an-1an-2...a1a0.
Наприклад: частка остача
20/2 10 0
10/2 5 0
5/2 2 1 2010=101002
2/2 1 0
1/2 0 1
4.3.1.2Метод віднімання.
Переведення методом віднімання полягає в наступному:
а) від заданого числа A віднімаємо вагу i-го розряду, де i - кількість знаків числа .
б) якщо результат невід’ємний, то до шуканого результату зправа дописуємо одиницю, отримане число беремо за нове; інакше до результату дописуємо нуль, а задане число A залишаємо без змін.
в) якщо номер розряду i не рівний нулю, то зменшуємо його на 1 і переходимо до п. a).
Н
априклад: 2024=4 1
423=4 0
422=0 1 2010=101002
021=2 0
020=1 0
4.3.1.3Метод маскування або логічного множення.
Метод призначений виключно для машинного виконання. Базується на тому, що на рівні процесора-обчислювача та пристроїв пам’яті комп’ютер оперує числами у двійковому поданні. І тільки при виведенні на екран, стандартні процедури виведення мови Pascal переводять числа в десяткову систему числення.
Для переводу числа треба скористатися такими правилами:
а) над заданим числом A і маскою M, яка дорівнює вазі i-го розряду, виконуємо операцію логічного множення - A&M, почавши з і=0.
б) якщо отримуємо нуль, то зліва дописуємо до значення результату “0”, інакше - “1”.
в) якщо номер і-го розряду менший за кількість розрядів заданого числа, то збільшуємо його на 1 і переходимо до п. а).
Наприклад:
задане число: в десятковій в пам’яті результат & двійкові
системі машини цифри
20 10100
м аска при і=4 24 10000 16 1
і=3 23 01000 0 0
і=2 22 00100 4 1
і=1 21 00010 0 0
і=0 20 00001 0 0
2010=10100
5.Лабораторна робота №5.
Програмування елементарних операцій з комплексними числами.
МЕТА РОБОТИ: Засвоєння поняття комплексного числа, форм його подання, порядку виконання елементарних операцій з комплексними числами (додавання, віднімання, множення, ділення), набуття навиків програмування дій з комплексними числами, закріплення навиків застосування структурованих змінних.
5.1Теоретичні відомості.
5.1.1Відомості з математики.
Комплексне числення та теорія функцій комплексних змінних, які вивчаються студентами в курсі вищої математики, надзвичайно широко застосовуються при розв’язуванні радіотехнічних задач. Більш детально з питаннями застосування комплексного числення студенти будуть знайомитись в курсах “Основи теорії кіл”, “Радіотехнічні кола та сигнали”.
Комплексним називається число вигляду
Z = a + jb, (1)
де
уявна одиниця (в математичних роботах
уявну одиницю часто позначають літерою
і), a=Re(Z) дійсна
частина комплексного числа; b=Im(Z)
уявна частина комплексного числа.
Зображається комплексне число точкою
на комплексній площині з координатами
(а,b) або (Re(Z), Im(Z)) (Рис. 5 .3). По осі
абсцис прийнято відкладати значення
дійсної частини комплексного числа,
по осі ординат - уявної частини.
Рис. 5.3. Зображення комплексних чисел на площині.
Як видно з Рис. 5 .3 комплексні числа можуть бути задані також радіус-вектором, проведеним з початку системи координат до точки, яка зображає комплексне число. Радіус-вектор характеризується довжиною і напрямом, який може бути заданий кутом нахилу радіус-вектора до дійсної осі. Стосовно до комплексних чисел довжину радіус-вектора називають модулем комплексного числа і позначають |Z|, Mod(Z) або просто Z. Кут має назву аргументу комплексного числа і позначається Arg(Z), (Z) або інколи просто (в кожному випадку позначення не повинно давати можливості багатозначного трактування).
Модуль комплексного числа може приймати довільні невід’ємні дійсні значення, аргумент – додатні або від’ємні значення кута в інтервалі [–, ]. Додатні кути прийнято відраховувати проти годинникової стрілки, від’ємні - за годинниковою стрілкою (на Рис. 5 .3 Arg(Z2)<0), з утворених перпендикулярами до осей прямокутних трикутників легко знайти взаємозв’язок між координатами зображаючої точки та параметрами радіус-вектора. Необхідно звернути особливу увагу на визначення значення k при розрахунку аргументу. На Рис. 5 .4 комплексна площина розбита на чотири квадранти осями координат і для кожного квадранту вказано значення k.
(2)
(3)
(4)
(5)
Рис. 5.4. Основні залежності для обчислення параметрів комплексних чисел.
Враховуючи формулу Ейлера ejx=cos(x)+j*sin(x), можна записати всі три форми подання комплексних чисел, які використовують в математиці:
a+jb = Mcos + jMsin = Mej.
Перша з них називається алгебраїчною, друга - тригонометричною, остання - показниковою формою. Алгебраїчна форма подає інформацію про дійсну та уявну частини комлпексного числа, тригонометрична та показникова - про його модуль та аргумент.
Над комплексними числами визначені ті ж операції, що й над дійсними числами: додавання, віднімання, множення, ділення, піднесення до степені та інші. Формальний запис операцій аналогічний запису операцій над дійсними числами
Z= Z 1+
Z 2; Z= Z 1
Z 2; Z = Z 1
Z 2; Z = Z 1/
Z 2;
.
Із операцій порівняння комплексних чисел визначена лише перевірка їх рівності або нерівності. Два комплексних числа вважаються рівними, коли рівні їх дійсні і уявні частини відповідно. Відношення “більше” або “менше” над комплексними числами не визначені.
Правила розрахунку дійсної та уявної частини, модуля та аргументу результату виконання перелічених операцій зведені в Табл. 5 .1.
Табл. 5.1. Вирази для розрахунку дій над комплексним числом.
Операція |
Re(Z) |
Im(Z) |
| Z | |
Arg(Z) |
Додавання |
a1 + a2 |
b1 + b2 |
Ф(2)1 |
Ф(3) |
Віднімання |
a1 a2 |
b1 b2 |
Ф(2) |
Ф(3) |
Множення |
a1a2 b1b2 або Ф(4) |
a1b2 + b1a2 або Ф(5) |
Ф(2) або | Z 1|| Z 2| |
Ф(3) або Arg(Z 1)+Arg(Z 2) |
Ділення |
(a1a2 + b1b2) |Z2|2 або Ф(4) |
(a1b2b1a2) | Z 2|2 або Ф(5) |
Ф(2) або | Z 1|| Z 2| |
Ф(3) або Arg(Z 1)Arg(Z 2) |
Піднесення до степеню |
Ф(4) |
Ф(5) |
| Z 1|n |
nArg(Z 1) |
Корінь2 |
Ф(4) |
Ф(5) |
____ n | Z 1| |
(Arg(Z 1)+2k)n де k=0,1 .. n-1 |
