Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
labor.doc
Скачиваний:
6
Добавлен:
03.11.2018
Размер:
220.16 Кб
Скачать

2 Теми лабораторних робот

1. Динамічний розподіл пам'яті, покажчики та посилання

2. Побудова класів та їх використання

3. Динамічні класові типи

4. Перевантаження операцій

5. Введення/ виведення потоками, робота з файлами, створення нових потокових операцій

6. Функції та класи з шаблонами

7. Успадкування, атрибути доступу та віртуальні функції

8. Обробка надзвичайних ситуацій

3 Варіанти завдань до лабораторних робот

Нижче наведено теми лабораторних робот і завдання до кожної з них (8 тем і 65 завдань).

Лабораторна робота 1

Тема: Динамічний розподіл пам'яті, покажчики та посилання

Варіант 1

Надана група паралельно з’єднаних резисторів. Кількість резисторів і опір кожного з них відомі. Створити програму, що обчислює загальний опір групи резисторів і долю теплової потужності (у відсотках), що виділяється кожним резистором. Для збереження величин опору резисторів застосувати динамічний масив. Для виконання операцій введення/виведення (у тому числі файлового) застосувати:

- стандартні функції;

- потокові операції.

Нижче наведені робочі формули для розрахунків.

Загальний опір R групи резисторів r1, r2, ... , rN:

.

Доля теплової потужності, що виділяється k-тим резистором:

.

Варіант 2

Надано список виборців, елементом якого є прізвище виборця та його ініціали. Розмір списку наперед не відомий, довжина прізвища виборця не перевищує 30 літерів. Створити програму упорядкування списку по алфавіту. Для обробки списку застосувати динамічний масив. Список виборців знаходиться у файлі з іменем 'Voter_1.txt', упорядкований список розташувати у файлі 'Voter_2.txt'.

Варіант 3

Створити функції, які повертають значення машинної похибки та розмір (у бітах) мантиси бінарного коду для дійсних типів float, double, long double. Виконати дослідження машинної похибки, встановити розмір мантиси бінарного коду, який відповідає кожному з вказаних типів.

Варіант 4

Створити функції для створення та знищення одновимірного динамічного масиву. Передбачити контроль успішності виділення пам’яті при створенні масиву. Тип елемента масиву: char, int, long, double, char*.

Варіант 5

Створити функцію сортування (впорядковування) одновимірного масиву з елементами наданого типу. Передбачити параметр функції, який дає змогу виконувати впорядковування елементів масиву: а) по збільшенню значень елементів; б) по зменшенню.

Варіант 6

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

Варіант 7

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

Варіант 8

Створити функцію, яка створює одновимірний динамічний масив таким чином, що він є конкатенацією (тобто отриманий з’єднанням) двох заданих масивів одного типу. Тип елемента масиву обрати самостійно.

Варіант 9

Надана прямокутна матриця А розміром NM. Створити функцію, яка знаходить сідлові точки матриці. Сідлові точки - це елементи матриці, які визначаються таким чином:

мінімаксна сідлова точка:

;

максимінна сідлова точка:

.

Тип елемента матриці обрати самостійно. Написати програму, що демонструє правильну роботу створеної функції.

Варіант 10

Надана квадратна матриця з елементами дійсного типу розміром NN. Створити функцію, що перетворює її у обернену матрицю. Для збереження допоміжних масивів застосувати динамічні масиви. Написати програму, що демонструє правильну роботу створеної функції.

Варіант 11

Система N лінійних рівнянь надана матрицею A та вектором правих частин B. Написати процедуру, що розв’язує систему за мето-дом Гауса. Процедура повинна зберігати вихідну матрицю A та вектор правих частин B. Створити програму для тестування проце- дури із використанням псевдовипадкових чисел, знайти найбільшу похибку для вектора-розв’язку. Значення елементів матриці A та вектору B вибирати з інтервалу [0,1].

Варіант 12

Написати програму для візуального дослідження якості генератора випадкових чисел. Програма повинна зображувати кожну пару випадкових чисел із набору, що генерується, точкою або колом малого діаметру у графічному вікні. Для побудови програми рекомендується застосувати модуль rgraph.h. Для отримання псевдовипадкових чисел можна застосувати функцію frand(a,b) з модулю syst.h.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]