kutuzzzov

Задачи на тему deque

Oct 6th, 2025
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.20 KB | None | 0 0
  1. Задача 1: Добавить элементы в начало дека
  2. Условие: Напишите функцию, которая добавляет заданное количество элементов в начало дека. Элементы должны быть последовательными числами, начиная с 1.
  3.  
  4. #include <iostream>
  5. #include <deque>
  6.  
  7. // функция
  8.  
  9. int main() {
  10.     std::deque<int> dq;
  11.     addToFront(dq, 3); // Добавляем 3 элемента: 1, 2, 3
  12.     for (int value : dq) {
  13.         std::cout << value << " "; // Вывод: 3 2 1
  14.     }
  15.     return 0;
  16. }
  17.  
  18. Задача 2: Удалить все отрицательные числа из дека
  19. Условие: Напишите функцию, которая удаляет все отрицательные числа из дека.
  20.  
  21. #include <iostream>
  22. #include <deque>
  23. #include <algorithm>
  24.  
  25. // функция
  26.  
  27. int main() {
  28.     std::deque<int> dq = {-1, 2, -3, 4, -5};
  29.     removeNegatives(dq);
  30.     for (int value : dq) {
  31.         std::cout << value << " "; // Вывод: 2 4
  32.     }
  33.     return 0;
  34. }
  35.  
  36. Задача 4: Найти среднее значение элементов в деке
  37. Условие: Напишите функцию, которая вычисляет среднее арифметическое всех элементов в деке.
  38.  
  39. #include <iostream>
  40. #include <deque>
  41.  
  42. // функция
  43.  
  44. int main() {
  45.     std::deque<int> dq = {1, 2, 3, 4, 5};
  46.     std::cout << "Average: " << calculateAverage(dq) << "\n"; // Вывод: Average: 3
  47.     return 0;
  48. }
  49.  
  50. Задача 5: Создать дек из двух половин другого дека
  51. Условие: Напишите функцию, которая разделяет дек на две равные части (или почти равные, если размер нечётный) и создаёт новый дек из этих частей.
  52.  
  53. #include <iostream>
  54. #include <deque>
  55.  
  56. // функция
  57.  
  58. int main() {
  59.     std::deque<int> dq = {1, 2, 3, 4, 5, 6};
  60.     std::deque<int> result = splitAndMerge(dq);
  61.     for (int value : result) {
  62.         std::cout << value << " "; // Вывод: 4 5 6 1 2 3
  63.     }
  64.     return 0;
  65. }
  66.  
  67. Задача 7: Добавить элементы в начало и конец дека
  68. Условие: Напишите функцию, которая добавляет элементы в начало и конец дека.
  69.  
  70. #include <iostream>
  71. #include <deque>
  72.  
  73. // функция
  74.  
  75. int main() {
  76.     std::deque<int> dq = {2, 3};
  77.     addElements(dq, 1, 4);
  78.     for (int value : dq) {
  79.         std::cout << value << " "; // Вывод: 1 2 3 4
  80.     }
  81.     return 0;
  82. }
  83.  
  84. Задача 8: Удалить первый и последний элементы дека
  85. Условие: Напишите функцию, которая удаляет первый и последний элементы дека.
  86.  
  87. #include <iostream>
  88. #include <deque>
  89.  
  90. // функция
  91.  
  92. int main() {
  93.     std::deque<int> dq = {1, 2, 3, 4, 5};
  94.     removeFirstAndLast(dq);
  95.     for (int value : dq) {
  96.         std::cout << value << " "; // Вывод: 2 3 4
  97.     }
  98.     return 0;
  99. }
Advertisement
Add Comment
Please, Sign In to add comment