- •Процес знаходження номеру варіанта індивідуального завдання
- •Завдання на курсову роботу
- •1.Теоретична частина Стек
- •2. Завдання 3. Побудова атд
- •2. 1. Постановка задачі
- •2. 2. Динаміка вмісту
- •Послідовність
- •Висновки
- •Список літератури
- •Додатки Частина 1. Побудова атд
- •3.2.2. Граф-схема алгоритму
- •3.3. Результати виконання програми
- •Частина 2. Застосування атд
2. Завдання 3. Побудова атд
2. 1. Постановка задачі
Змоделювати абстрактний тип даних (АТД), який використати в другій частині цього завдання. Переписати основні операції роботи з АТД і продемонструвати їх застосування при додаванні та вилученні елементів в АТД. Для реалізації цього задати послідовність з К > 10 цілих чисел (числа вводити з клавіатури). Всі парні числа додавати в АТД, а кожне непарне число має вилучати з АТД один елемент. Виводити на екран динаміку вмісту АТД під час обробки заданої послідовності.
2. 2. Динаміка вмісту
Послідовність
Вхідна послідовність: { 9, 4, 2, 0, -2, 3, -5, -9, -5, 1 }
Схематичне зображення списку під час обробки всієї послідовності
9 |
NULL |
4 |
|
9 |
NULL |
2 |
|
4 |
|
9 |
NULL |
0 |
|
2 |
|
4 |
NULL |
9 |
NULL |
2 |
|
4 |
|
9 |
NULL |
3 |
|
2 |
|
4 |
NULL |
9 |
NULL |
2 |
|
4 |
|
9 |
NULL |
4 |
|
9 |
NULL |
9 |
NULL |
1 |
|
9 |
NULL |
2. 3. Результат виконання програми
3. Завдання 4. Застосування АТД
3.1. Постановка задачі
3. Многочлен виду , де представити у вигляді зв’язаного списку в якому кожний вузол має три поля: одне – для коефіцієнта Сi , друге – для показника степеня ni , третє – для вказівника на наступний вузол списку. Для описаного представлення многочленів програмно реалізувати таку операцію:
Диференціювання многочлена.
3.2. Алгоритм розв’язання задачі
3.2.1. Словесний опис алгоритму
Оголошуємо новий елемент типу список, та рядок символів у якому буде зберігатись вхідна послідовність.
Після вводу вх. послідовності виконується по елементне додавання елементів у список:
Якщо список пустий елемент відразу додається до нього.
Якщо список не пустий, виконується порівняння показника степеня даного елемента із тими що є у списку. На основі цього аналізу елемент встановлюється у таку позицію, щоб список завжди був посортований по спаданню показників степеня.
Після обробки всієї послідовності виконується диференціювання многочлена. Переглядається кожен елемент списку, і перезаписуються значення відповідно до означення операції диференціювання многочлена:
Коефіцієнт многочлена множиться на показник степеня.
Показник степеня зменшується на одиницю.
Виконується вивід результуючого списку на екран.
