DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

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

ВУЗ:
Інші
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Кафедра ЕОМ

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

Рік:
2018
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Алгоритми та методи обчислень

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

Кафедра ЕОМ  Звіт з лабораторної роботи № 5 з дисципліни: “Алгоритми та методи обчислень” Варіант № 7 Мета роботи: ознайомитися з парадигмою функційного програмування. Вхідні дані 7: 565, 566, 561, 561, 557, 560, 561, 556, 556, 552, 559, 551, 556, 557, 552, 554, 546, 551, 552, 547 Лістинг програми: #include <iostream> #include <list> #include <algorithm> #include <future> template<typename T> std::list<T> parallel_quick_sort(std::list<T> input) { if (input.size() < 2) { return input; } //move frist element in the list to result list and take it as pivot value std::list<T> result; result.splice(result.begin(), input, input.begin()); T pivot = *result.begin(); //partition the input array auto divide_point = std::partition(input.begin(), input.end(), [&](T const & t) { return t < pivot; }); std::list<T> lower_list; lower_list.splice(lower_list.end(), input, input.begin(), divide_point); auto new_lower(parallel_quick_sort(std::move(lower_list))); std::future<std::list<T>> new_upper_future (std::async(&parallel_quick_sort<T>, std::move(input))); result.splice(result.begin(), new_lower); result.splice(result.end(), new_upper_future.get()); return result; } int main() { std::list<int> my_list; my_list.push_back(565); my_list.push_back(566); my_list.push_back(561); my_list.push_back(561); my_list.push_back(557); my_list.push_back(560); my_list.push_back(561); my_list.push_back(556); my_list.push_back(552); my_list.push_back(559); my_list.push_back(551); my_list.push_back(556); my_list.push_back(557); my_list.push_back(552); my_list.push_back(554); my_list.push_back(556); my_list.push_back(551); my_list.push_back(552); my_list.push_back(547); std::cout<< "Array:"<<std::endl; for (auto &var : my_list) { std::cout << var << " "; } auto result = parallel_quick_sort<int>(my_list); std::cout<<std::endl<<"Sorted array:"<< std::endl; for (auto &var : result) { std::cout << var << " "; } std::cout<<std::endl; } Скріншот виконання програми:  Висновок - ознайомився з парадигмою фінкційного програмування
Антиботан аватар за замовчуванням

14.10.2018 19:55

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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