Advertisement
Vickyyy01

SortOddEvenNumbersArray

Jan 13th, 2016
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.85 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.     int arrSize; //determines how many elements the array is going to hold
  9.     int matrix[100]; //the array
  10.  
  11.     cin >> arrSize;
  12.  
  13.     for(int i = 0; i < arrSize; i++)
  14.     {
  15.         int num = rand() % 1000 + 1;
  16.         matrix[i] = num;
  17.         cout << matrix[i] << " ";
  18.     }
  19.  
  20.     cout << endl << endl;
  21.  
  22.     int oddNum[100];
  23.     int evenNum[100];
  24.     int oddCtr = 0;
  25.     int evenCtr = 0;
  26.     int j = 0;
  27.     int k = 0;
  28.  
  29.     while(j < arrSize) //odd array
  30.     {
  31.         if(matrix[j] % 2 != 0)
  32.         {
  33.             oddNum[oddCtr] = matrix[j];
  34.             oddCtr++;
  35.         }
  36.         j++;
  37.     }
  38.  
  39.  
  40.     if(arrSize - oddCtr != 0)
  41.        {
  42.            while(k < arrSize) //even array
  43.            {
  44.               if(matrix[k] % 2 == 0)
  45.               {
  46.                 evenNum[evenCtr] = matrix[k];
  47.                 evenCtr++;
  48.               }
  49.               k++;
  50.            }
  51.        }
  52.  
  53.     if(arrSize > 0)
  54.     {
  55.     int temp1;
  56.     int temp2;
  57.  
  58.     if(oddCtr > 0)
  59.     {
  60.         for(int a = 1; a < oddCtr; a++) //sorts array with odd numbers
  61.     {
  62.         for(int b = 0; b < oddCtr - a; b++)
  63.         {
  64.             if(oddNum[b] > oddNum[b+1])
  65.             {
  66.                 temp1 = oddNum[b+1];
  67.                 oddNum[b+1] = oddNum[b];
  68.                 oddNum[b] = temp1;
  69.             }
  70.         }
  71.     }
  72.     }
  73.  
  74.     if(arrSize - oddCtr != 0)
  75.     {
  76.         for(int a = 1; a <= evenCtr - 1; a++) //sorts array with even numbers
  77.     {
  78.         for(int b = 0; b < evenCtr - a; b++)
  79.         {
  80.             if(evenNum[b] > evenNum[b+1])
  81.             {
  82.                 temp2 = evenNum[b+1];
  83.                 evenNum[b+1] = evenNum[b];
  84.                 evenNum[b] = temp2;
  85.             }
  86.         }
  87.     }
  88.     }
  89.     }
  90.  
  91.     for(int f = 0; f <= oddCtr - 1; f++)
  92.     {
  93.         matrix[f] = oddNum[f];
  94.     }
  95.  
  96.     if(arrSize - oddCtr != 0)
  97.     {
  98.         int z = oddCtr;
  99.         int o = 0;
  100.         while(z < arrSize)
  101.         {
  102.            matrix[z] = evenNum[o];
  103.            z++;
  104.            o++;
  105.         }
  106.     }
  107.  
  108.     for(int y = 0; y < arrSize; y++)
  109.     {
  110.         cout << matrix[y] << " ";
  111.     }
  112.  
  113.     cout << endl;
  114. }
  115.  
  116. /*
  117. --------------------------------------------------------------------------------------------------------------------------------
  118. --------------------------------------------------------------------------------------------------------------------------------
  119. Declares an array with random numbers and sorts it into odd numbers in increasing order followed by even numbers in increasing order.
  120. --------------------------------------------------------------------------------------------------------------------------------
  121. --------------------------------------------------------------------------------------------------------------------------------
  122. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement