Вопрос задан 25.06.2023 в 06:25. Предмет Информатика. Спрашивает Егоров Антон.

РЕШИТЕ ЗАДАЧУ ЯЗЫК С++ 30 БАЛЛОВ ДАЮ!!!!!!!!!!!!!!!!! Дан массив a, состоящий из n целых чисел.

Ваша задача — переписать его элементы в другой массив такого же размера следующим образом: сначала должны идти все отрицательные элементы, а затем все остальные. Формат входных данных В первой строке входных данных лежит натуральное число n — количество элементов массива (2≤n≤500). Во второй строке находятся n целых чисел, разделённых пробелами — элементы этого массива. Элементы массива по модулю не превосходят 1000. Формат выходных данных В единственной строке выведите все элементы нового массива. входные данные 4 1 -3 3 7 выходные данные -3 1 3 7
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Musatovs Deniss.

#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];

}

Отсортируем массив по возрастанию и выведем

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи вам потребуется пройтись по исходному массиву и отделить отрицательные элементы от неотрицательных, а затем создать новый массив, объединив эти две группы в нужном порядке. Вот пример решения на C++:

cpp
#include <iostream> #include <vector> int main() { int n; std::cin >> n; std::vector<int> original(n); std::vector<int> negatives; std::vector<int> nonNegatives; for (int i = 0; i < n; ++i) { std::cin >> original[i]; if (original[i] < 0) { negatives.push_back(original[i]); } else { nonNegatives.push_back(original[i]); } } // Объединяем отрицательные и неотрицательные элементы в новом массиве std::vector<int> result; result.insert(result.end(), negatives.begin(), negatives.end()); result.insert(result.end(), nonNegatives.begin(), nonNegatives.end()); // Выводим новый массив for (int i = 0; i < n; ++i) { std::cout << result[i]; if (i < n - 1) { std::cout << ' '; } } std::cout << std::endl; return 0; }

Скопируйте этот код в файл с расширением .cpp и скомпилируйте его с помощью вашего компилятора C++. После этого, вы сможете ввести входные данные и получить соответствующий вывод.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос