Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int main()
- {
- int n;
- bool isIncorrect;
- int current, temp;
- cout << "Данная программа предназначена для изменения данной последовательности так, чтобы в начале стояли все нулевые элементы, затем отрицательные, а затем положительные элементы последовательности." << endl;
- do
- {
- isIncorrect = false;
- cout << "Введите количество элементов в последовательности: ";
- cin >> n;
- if (cin.get() != '\n')
- {
- cin.clear();
- while (cin.get() != '\n');
- isIncorrect = true;
- cout << "Ошибка! Введите число." << endl;
- }
- if ((!isIncorrect) && (n < 1))
- {
- isIncorrect = true;
- cout << "Ошибка! Введите верное количество элементов." << endl;
- }
- } while (isIncorrect);
- int* arr = new int[n];
- cout << "Введите элементы последовательности." << endl;
- for (int i = 0; i < n; ++i)
- {
- do
- {
- isIncorrect = false;
- cout << "Элемент " << i + 1 << ": ";
- cin >> arr[i];
- if (cin.get() != '\n')
- {
- cin.clear();
- while (cin.get() != '\n');
- isIncorrect = true;
- cout << "Ошибка. Введите целое число." << endl;
- }
- } while (isIncorrect);
- }
- current = 0;
- for (int i = 0; i < n; ++i)
- {
- if (arr[i] == 0)
- {
- temp = arr[current];
- arr[current] = arr[i];
- arr[i] = temp;
- current++;
- }
- }
- for (int i = current; i < n; ++i)
- {
- if (arr[i] < 0)
- {
- temp = arr[current];
- arr[current] = arr[i];
- arr[i] = temp;
- current++;
- }
- }
- cout << "Отсортированная последовательность: ";
- for (int i = 0; i < n; ++i)
- {
- cout << arr[i] << " ";
- }
- delete[] arr;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement