
Дан одномерный целочисленный массив, заданный случайными числами на промежутке [-50; 50]. Заменить
в массиве все отрицательные элементы на элементы им противоположные и отсортировать полученный массив. Указание: для получения случайных чисел с равномерным распределением в интервале [a;b] надо использовать формулу a[i]= rand()%(b-a+1) + a;С++

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

#include <iostream>
#include <time.h>
using namespace std;
int main() {
int *A;
int N;
setlocale(LC_ALL, "Russian");
srand(time(NULL));
cout << "Количество элементов в массиве: "; cin >> N;
A = new int[N];
cout << "***Исходный массив***" << endl;
for (int i = 0; i < N; i++) {
A[i] = rand() % (101) - 50;
cout << A[i] << " ";
}
cout << endl;
cout << "***Измененный массив***" << endl;
for (int i = 0; i < N; i++) {
if (A[i] < 0) A[i] = -A[i];
cout << A[i] << " ";
}
cout << endl;
int temp;
//Сортировка массива пузырьком
cout << "***Измененный отсортированный массив***" << endl;
for (int i = 0; i < N - 1; i++) {
for (int j = 0; j < N - i - 1; j++) {
if (A[j] > A[j + 1]) {
temp = A[j];
A[j] = A[j + 1];
A[j + 1] = temp;
}
}
}
for (int i = 0; i < N; i++) cout << A[i] << " ";
cout << endl;
system("pause");
return 0;
}




#include <iomanip>
#include <cstdlib>
using namespace std;
int main() {
bool priz;
int n;
cout<< "n = "; cin>>n;
int *a = new int[n];
srand(time(NULL));
for (int i=0;i<n;i++) {
a[i]=rand()%101-50;
cout<<a[i]<<" ";
if (a[i]<0) a[i] = - a[i];
}
cout<<endl;
// сортировка массива
while (priz)
{
priz=false;
for (int i=1; i<n; i++)
if (a[i]<a[i-1])
{ swap(a[i],a[i-1]); priz=true; }
}
// вывод массива
cout<<"new array"<<endl;
for (int i=0; i<n; i++)
cout<<a[i]<<" ";
cout<<endl;
system("pause");
return 0;
}



Для решения данной задачи вам потребуется использовать язык программирования C++. Вот пример кода, который заменяет отрицательные элементы в массиве на их противоположные значения и сортирует полученный массив:
```cpp
#include
int main() { const int SIZE = 10; int arr[SIZE];
// Заполнение массива случайными числами от -50 до 50 for (int i = 0; i < SIZE; i++) { arr[i] = rand() % 101 - 50; }
// Замена отрицательных элементов на их противоположные значения for (int i = 0; i < SIZE; i++) { if (arr[i] < 0) { arr[i] = -arr[i]; } }
// Сортировка массива std::sort(arr, arr + SIZE);
// Вывод отсортированного массива std::cout << "Отсортированный массив: "; for (int i = 0; i < SIZE; i++) { std::cout << arr[i] << " "; } std::cout << std::endl;
return 0; } ```
В этом коде мы используем функцию `rand()` для генерации случайных чисел в заданном диапазоне. Затем мы заменяем отрицательные элементы на их противоположные значения с помощью условного оператора `if`. После этого мы сортируем массив с помощью функции `std::sort()` из стандартной библиотеки C++. Наконец, мы выводим отсортированный массив на экран.
Примечание: В приведенном коде мы предполагаем, что у вас уже есть базовое знание языка программирования C++. Если у вас возникнут вопросы или затруднения, не стесняйтесь задавать их. Я всегда готов помочь!


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