You are on page 1of 6

МІНІСТЕРСТВО НАУКИ ТА ОСВІТИ УКРАЇНИ

Національний Авіаційний Університет


Факультет комп`ютерних наук та тахнологій
Кафедра прикладної математики

М2 Лабараторна робота № 3
Тема: "Числа фібаначі"
З дисципліни « Алгоритмічні мови та програмування»

Виконав студент 118 групи:


Ярослав Петриченко
Старший викладач:
Андрій Костянтинович ШЕВЧЕНКО

Київ 2023

1
Зміст

1. Постановка задачі............................................................................................................................3
2. Теоретична частина.........................................................................................................................4
3. Тестування......................................................................................................................................5
4. Висновок.........................................................................................................................................6
5 Література........................................................................................................................................6

2
1. Постановка задачі
Метою даного коду є демонстрація обчислення та відображення послідовності чисел Фібоначчі
за допомого двох методів: ітеративного (fibonacci_arr) та рекурсивного (fibonacci_rec). Код
також включає функціональність для графічного представлення викликів функцій при
використанні рекурсивного методу для конкретного числа N. Крім того, програма підраховує
час виконання кожного методу.

Завдання:
Обчислення чисел Фібоначчі:
Реалізовано два методи обчислення чисел Фібоначчі: ітеративний (fibonacci_arr)
та рекурсивний (fibonacci_rec).
Графічне представлення викликів функцій:

Для рекурсивного методу (fibonacci_rec), створено графічне представлення


викликів функцій за допомого списку result, де кожен елемент представляє рядок
графу.
Вимірювання часу виконання:

Програма вимірює час виконання для кожного методу та виводить його для
кожного числа Фібоначчі.
Обробка командних аргументів:

Програма приймає командний аргумент -n, що вказує кількість чисел Фібоначчі


для обчислення та відображення. Також передбачена опція -h для виведення
довідкового повідомлення.
Перевірка коректності введених даних:

Перевіряється, чи введено додатнє число N для обчислення чисел Фібоначчі.


Приклад використання:

Користувач може запустити програму, вказавши кількість чисел Фібоначчі через


опцію -n.

3
2. Теоретична частина

Рекурсивний метод fibonacci_rec

Функція fibonacci_rec обчислює числа Фібоначчі рекурсивним методом.


Використовується глобальні змінні level та result для візуалізації викликів функцій.
Якщо n менше або дорівнює 1, повертається n.
В іншому випадку викликає саму себе для n-1 та n-2 та побудова графіку викликів.
Ітеративний метод fibonacci_arr

Функція fibonacci_arr обчислює числа Фібоначчі ітеративним методом.


Використовується список fib_list, в якому зберігаються обчислені числа Фібоначчі.
Використовує цикл для обчислення та заповнення списку значеннями чисел Фібоначчі.
Графічне відображення викликів рекурсивного методу

Створюється графічне представлення викликів рекурсивного методу за допомогою списку


result.
Кожен рівень викликів відображається у вигляді рядка графу.
Вимірювання часу виконання

Час виконання обох методів вимірюється за допомогою бібліотеки time.

4
Тестування

5
5. Висновок

Лабораторна робота дозволила вивчити та порівняти ітеративний та рекурсивний методи


обчислення чисел Фібоначчі. Рекурсивний метод надає графічне представлення викликів
функцій, що полегшує візуальне розуміння рекурсивного виклику. Обидва методи виміряно за
часом виконання для оцінки їхньої ефективності.

6. Література
1) Безлі, Д. Python Distilled (Developer's Library) [Текст] / Д. Безлі. — Pearson, 2021. — 352 с. —
ISBN 978-0-13-417327-6.
2) Марк Лутц, Вивчаємо Python, 4-е вид., 2010.
3) Свейгарт, А. Automate the Boring Stuff with Python: Practical Programming for Total Beginners
[Текст] / А. Свейгарт. — No Starch Press, 2021. — 592 с.
Статті та посібники в Інтернеті

You might also like