РЕШИТЕ ЗАДАЧУ ЯЗЫК С++ 30 БАЛЛОВ ДАЮ!!!!!!!!!!!!!!!!!
Дан массив a, состоящий из n целых чисел. Ваша задача — переписать его элементы в другой массив такого же размера следующим образом: сначала должны идти все отрицательные элементы, а затем все остальные.
Формат входных данных
В первой строке входных данных лежит натуральное число n — количество элементов массива (2≤n≤500).
Во второй строке находятся n целых чисел, разделённых пробелами — элементы этого массива. Элементы массива по модулю не превосходят 1000.
Формат выходных данных
В единственной строке выведите все элементы нового массива.
входные данные
4
1 -3 3 7
выходные данные
-3 1 3 7
Ответы
Ответ дал:
0
#include ‹iostream›
using namespace std;
int* arr;
void insertionSort(int* arr, int n)
{
int i, key, j;
for (i = 1; i < n; i++)
{
key = arr[i];
j = i - 1;
while (j >= 0 && arr[j] > key)
{
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = key;
}
}
int main()
{
int n;
cin » n;
arr = new int[n];
for(int i = 0; i ‹ n; i++) cin » arr[i];
insertionSort(arr, n);
for(int i = 0; i ‹ n; i++) cout « arr[i];
}
Отсортируем массив по возрастанию и выведем
Похожие вопросы
1 год назад
2 года назад
7 лет назад
7 лет назад
9 лет назад