
РЕШИТЕ ЗАДАЧУ ЯЗЫК С++ 30 БАЛЛОВ ДАЮ!!!!!!!!!!!!!!!!! Дан массив a, состоящий из n целых чисел.
Ваша задача — переписать его элементы в другой массив такого же размера следующим образом: сначала должны идти все отрицательные элементы, а затем все остальные. Формат входных данных В первой строке входных данных лежит натуральное число n — количество элементов массива (2≤n≤500). Во второй строке находятся n целых чисел, разделённых пробелами — элементы этого массива. Элементы массива по модулю не превосходят 1000. Формат выходных данных В единственной строке выведите все элементы нового массива. входные данные 4 1 -3 3 7 выходные данные -3 1 3 7

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

#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];
}
Отсортируем массив по возрастанию и выведем



Для решения этой задачи вам потребуется пройтись по исходному массиву и отделить отрицательные элементы от неотрицательных, а затем создать новый массив, объединив эти две группы в нужном порядке. Вот пример решения на 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++. После этого, вы сможете ввести входные данные и получить соответствующий вывод.


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







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili