DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт з лабораторної роботи №2 з дисципліни «Програмування складних алгоритмів» на тему «Рекурсивні алгоритми»

Оригінальна назва роботи

Рекурсивні алгоритми

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
ООП
Факультет:
ЗІ
Кафедра:
Кафедра обчислювальної техніки

Інформація про роботу

Рік:
2022
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Програмування
Група:
К
Коротко про документ

Про що ця робота

У звіті наведено розв'язання лабораторної роботи з теми рекурсивних алгоритмів мовою програмування C. Здійснено порівняння часу виконання та складності програм із використанням рекурсії та без неї.

У роботі розглядаються

  • Рекурсивні алгоритми
  • Рекурсивні функції
  • Мова програмування C
  • Часова складність алгоритмів
  • Пряма і непряма рекурсія
  • Вимірювання часу виконання програм

Зміст і розділи

  1. Мета роботи
  2. Методичні вказівки
  3. Завдання до лабораторної роботи
  4. Код завдання
  5. Результати
  6. Висновки
Для кого:Студенти технічних спеціальностей, викладачі та дослідники в галузі програмування і алгоритмів.
Викладачі:Викладач

Ключові поняття

рекурсіярекурсивна функціяскладність алгоритмучас виконанняпрограмуваннямова Cалгоритмфункціянепряма рекурсіялабораторна робота

Частина тексту файла (без зображень, графіків і формул):

НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ “КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ імені ІГОРЯ СІКОРСЬКОГО” ЗВІТ з лабораторної роботи №2 з навчальної дисципліни “Програмування складних алгоритмів” Варіант №3 Тема: Рекурсивні алгоритми. Мета роботи: Метою лабораторної роботи є набуття практичних навичок з рекурсивними функціями. Методичні вказівки Лабораторна робота спирається на знаннях отриманих при вивченні наступних питань лекції: – Поняття рекурсії. – Поняття прямої i непрямої рекурсiї. Завдання до лабораторної роботи: Розробити програми згідно з алгоритмом з використанням рекурсивної функції та без використання рекурсивної функції. Оцінити час виконання та складність алгоритму. Завдання 3 варіанту: / Код завдання: #include <stdio.h> #include <windows.h> double P(int n) {   if (n == 1) {     return 1.0/n;   }   else {     double y = 1.0/n * P(n-1);     return y;     } } //------------wirh rekursion--------------- int main(void) {   long time1, time2;     int n, z;   double y;   printf("Enter N: ");   scanf("%d", &n);   printf("How do u want to solve task? \n1.With rekursion \n2.Without rekursion\n");   scanf("%d", &z);   if (z == 1) {     time1 = GetTickCount()  ;     y = P(n);     if (n > 500) {         printf("%.3000f", y);     }     else if (n > 100) {         printf("%.1000f", y);     }     else if(n > 10){       printf("%.30f", y);       }     else {       printf("%f", y);     }     time1 = GetTickCount() - time1;     printf("\nProgram was working %ld milliseconds", time1);   }     //-------------without rekursion-----------   else {     double a = 1;     time1 = GetTickCount();     for(int i = 1; i < n+1; i++) {       a = a * (1.0 / i);     }     if (n > 500) {         printf("%.3000f", a);     }     else if (n > 100) {         printf("%.1000f", a);     }     else if(n > 10){       printf("\n%.30f", a);       }     else {       printf("\n%f", a);     }     time1 = GetTickCount() - time1;     printf("\nProgram was working %ld milliseconds", time1);   }   return 0; } Результати: / / Висновки: Під час даної лабораторної роботи було набуто практичних навичок з рекурсивними функціями. Написано програму яка виконує завдання за допомогою рекурсії і без неї. Бачимо що по часу роботи програми методи майже не відрізняються тобто часова складність однакова. Складність алгоритму: для мене було легше рішити це завдання без рекурсії, але кожен для себе вибирає метод легший для нього
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!