Advertisement
SkeptaProgrammer

Untitled

Jun 25th, 2019
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.67 KB | None | 0 0
  1. // task6.cpp : Этот файл содержит функцию "main". Здесь начинается и заканчивается выполнение программы.
  2. //
  3.  
  4. /*Принять в функцию некоторый заполненный массив с отрицательными и
  5. положительными элементами. Нужно слегка видоизменить массив таким образом,
  6. чтобы сначала шли все положительные элементы, потом все отрицательные. Не
  7. путать с сортировкой по возрастанию. Элементы должны идти в порядке похожем
  8. порядку заданного массива
  9. -10 5 9 -1 1 -20 90====> 5 9 1 90 -10 -1 -20*/
  10.  
  11. #include "pch.h"
  12. #include <iostream>
  13. #include <fstream>
  14. #include <vector>
  15. using namespace std;
  16.  
  17.  
  18. void changeArr(int *arr, int n)
  19. {
  20.     int positive = 0, negative = 0, k = 0, m = 0;
  21. for (int i = 0; i < n; i++)
  22.     {
  23.         if (arr[i] > 0) positive++;
  24.         else negative++;
  25.     }
  26.     int *arrPos = new int[positive], *arrNeg = new int[negative];
  27.    
  28.     for (int i = 0; i < n; i++)
  29.     {
  30.         if (arr[i] < 0)
  31.         {
  32.             arrNeg[k] = arr[i];
  33.             k++;
  34.         }
  35.         else
  36.         {
  37.             arrPos[m] = arr[i];
  38.             m++;
  39.         }
  40.     }
  41.    
  42.     for (int i = 0; i < positive; i++)
  43.         arr[i] = arrPos[i];
  44.     for (int i = 0; i < negative; i++)
  45.         arr[positive + i] = arrNeg[i];
  46.     delete[] arrNeg;
  47.     delete[] arrPos;
  48. }
  49.  
  50. int main()
  51. {
  52.     int n; cin >> n;
  53.     int *arr = new int[n];
  54.     for (int i = 0; i < n; i++)
  55.     {
  56.         cin >> arr[i];
  57.     }
  58.     changeArr(arr, n);
  59.     for (int i = 0; i < n; i++)
  60.         cout << arr[i];
  61.     delete[] arr;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement