kutuzzzov

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

Oct 6th, 2025
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.26 KB | None | 0 0
  1. Задача 1: Найти сумму всех элементов вектора
  2. Условие: Напишите функцию, которая принимает вектор целых чисел и возвращает их сумму.
  3.  
  4. #include <iostream>
  5. #include <vector>
  6.  
  7. // функция
  8.  
  9. int main() {
  10.     std::vector<int> vec = {1, 2, 3, 4, 5};
  11.     std::cout << "Sum: " << sumOfElements(vec) << "\n"; // Вывод: Sum: 15
  12.     return 0;
  13. }
  14.  
  15. Задача 2: Найти максимальный элемент в векторе
  16. Условие: Напишите функцию, которая находит максимальный элемент в векторе.
  17.  
  18. #include <iostream>
  19. #include <vector>
  20.  
  21. // функция
  22.  
  23. int main() {
  24.     std::vector<int> vec = {3, 7, 2, 9, 4};
  25.     std::cout << "Max: " << findMax(vec) << "\n"; // Вывод: Max: 9
  26.     return 0;
  27. }
  28.  
  29. Задача 3: Удалить все чётные числа из вектора
  30. Условие: Напишите функцию, которая удаляет все чётные числа из вектора.
  31.  
  32. #include <iostream>
  33. #include <vector>
  34.  
  35. // функция
  36.  
  37. int main() {
  38.     std::vector<int> vec = {1, 2, 3, 4, 5, 6};
  39.     removeEvenNumbers(vec);
  40.     for (int value : vec) {
  41.         std::cout << value << " "; // Вывод: 1 3 5
  42.     }
  43.     return 0;
  44. }
  45.  
  46. Задача 4: Проверить, содержит ли вектор заданное значение
  47. Условие: Напишите функцию, которая проверяет, содержит ли вектор заданное значение.
  48.  
  49. #include <iostream>
  50. #include <vector>
  51.  
  52. // функция
  53.  
  54. int main() {
  55.     std::vector<int> vec = {1, 2, 3, 4, 5};
  56.     std::cout << std::boolalpha;
  57.     std::cout << "Contains 3? " << containsValue(vec, 3) << "\n"; // Вывод: Contains 3? true
  58.     std::cout << "Contains 6? " << containsValue(vec, 6) << "\n"; // Вывод: Contains 6? false
  59.     return 0;
  60. }
  61.  
  62. Задача 5: Развернуть вектор
  63. Условие: Напишите функцию, которая разворачивает вектор (меняет порядок элементов на обратный).
  64.  
  65. #include <iostream>
  66. #include <vector>
  67. #include <algorithm>
  68.  
  69. // функция
  70.  
  71. int main() {
  72.     std::vector<int> vec = {1, 2, 3, 4, 5};
  73.     reverseVector(vec);
  74.     for (int value : vec) {
  75.         std::cout << value << " "; // Вывод: 5 4 3 2 1
  76.     }
  77.     return 0;
  78. }
  79.  
  80. Задача 6: Найти два наибольших элемента в векторе
  81. Условие: Напишите функцию, которая находит два наибольших элемента в векторе.
  82.  
  83. #include <iostream>
  84. #include <vector>
  85.  
  86. // функция
  87.  
  88. int main() {
  89.     std::vector<int> vec = {3, 7, 2, 9, 4};
  90.     auto [max1, max2] = findTwoMax(vec);
  91.     std::cout << "Max1: " << max1 << ", Max2: " << max2 << "\n"; // Вывод: Max1: 9, Max2: 7
  92.     return 0;
  93. }
  94.  
  95. Задача 7: Сжать вектор, удалив дубликаты
  96. Условие: Напишите функцию, которая удаляет дубликаты из вектора, сохраняя порядок элементов.
  97.  
  98. #include <iostream>
  99. #include <vector>
  100. #include <unordered_set>
  101.  
  102. // функция
  103.  
  104. int main() {
  105.     std::vector<int> vec = {1, 2, 2, 3, 4, 4, 5};
  106.     removeDuplicates(vec);
  107.     for (int value : vec) {
  108.         std::cout << value << " "; // Вывод: 1 2 3 4 5
  109.     }
  110.     return 0;
  111. }
  112.  
  113. Задача 8: Разделить вектор на два по условию
  114. Условие: Напишите функцию, которая разделяет вектор на два: один с числами, меньшими заданного значения, другой — с остальными.
  115.  
  116. #include <iostream>
  117. #include <vector>
  118.  
  119. // функция
  120.  
  121. int main() {
  122.     std::vector<int> vec = {1, 5, 8, 3, 7, 2};
  123.     auto [smaller, larger] = splitVector(vec, 5);
  124.     std::cout << "Smaller: ";
  125.     for (int value : smaller) std::cout << value << " "; // Вывод: Smaller: 1 3 2
  126.     std::cout << "\nLarger: ";
  127.     for (int value : larger) std::cout << value << " "; // Вывод: Larger: 5 8 7
  128.     return 0;
  129. }
Advertisement
Add Comment
Please, Sign In to add comment