Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <ctime>
- void randomizeArr(int arr[], int arrSize, int minVal, int maxVal)
- {
- for (int i{ 0 }; i < arrSize; ++i)
- {
- arr[i] = rand() % (maxVal - minVal) + minVal;
- }
- }
- void printArr(int arr[], int arrSize )
- {
- for (int i{ 0 }; i < arrSize; ++i)
- {
- std::cout << arr[i] << ' ';
- }
- std::cout << '\n';
- }
- void sortInsArr(int arr[], int arrSize, int begin, int end, bool ascending = true )
- {
- int tmp;
- for (int insPos{ begin + 1 }; insPos < end; ++insPos)
- {
- for (int testIns{ insPos }; testIns > begin; --testIns)
- {
- if ((ascending and arr[testIns] < arr[testIns - 1]) or (!ascending and arr[testIns] > arr[testIns - 1]))
- {
- tmp = arr[testIns - 1];
- arr[testIns - 1] = arr[testIns];
- arr[testIns] = tmp;
- }
- }
- }
- }
- int main()
- {
- srand(time(0));
- const int minVal{ 0 };
- const int maxVal{ 99 };
- const int arrSize{ 10 };
- int arr[arrSize];
- randomizeArr(arr,arrSize, minVal, maxVal);
- std::cout << "Original array: ";
- printArr(arr, arrSize);
- sortInsArr(arr, arrSize, 0, arrSize/2, false);
- sortInsArr(arr, arrSize, arrSize/2, arrSize, true);
- std::cout << "Sorted array: ";
- printArr(arr, arrSize);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment