#include #include using namespace std; void show(const string & s, int A[], int N) { cout << s; for (int i = 0; i < N; i += 1) cout << " " << A[i]; cout << "\n"; } void bubblesort_up(int A[], int N) { for (int first = 0; first < N; first += 1) for (int j = N - 1; j > first; j -= 1) if (A[j - 1] > A[j]) swap(A[j - 1], A[j]); } void bubblesort_down(int A[], int N) { for (int end = N - 1; end > 0; end -= 1) for (int j = 1; j <= end; j += 1) if (A[j - 1] > A[j]) swap(A[j - 1], A[j]); } int main() { const int dsize = 16; int d[dsize]; srandomdev(); for (int i = 0; i < dsize; i += 1) d[i] = random() % 900 + 100; show("before:", d, dsize); bubblesort_down(d, dsize); show("after :", d, dsize); }