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

с программированием С++ МАССИВЫ

Дан массив из n элементов, Содержащий положительные и отрицательные числа. Если положительных элементов больше отрицательных, то поменять местами минимальный и максимальный элементы массива. Полученный массив вывести на экран.

Дан массив из n элементов, состоящий из положительных и отрицательных чисел. Если минимальный и максимальный элементы стоят рядом, то все отрицательные элементы массива обнулить.

Показать ответ
Ответ:
АлинаКовтун
АлинаКовтун
11.01.2022 17:44

Задание 1:

using namespace std;

#include <iostream>

#include <clocale>

#include <cstdlib>

#include <iomanip>

#include <string>

#include <ctime>

int main() {

setlocale(LC_ALL, "rus");

system("chcp 1251");

srand(time(0));

 

int N = rand() % 6 + 5;

int pos = 0, neg = 0, max = -20, min = 20, maxind, minind;

int* mass = new int[N];

cout << "Массив:" << endl;

for (int i = 0; i < N; i++) {

 mass[i] = rand() % 41 - 20;

 if (mass[i] > 0) pos++;

 if (mass[i] < 0) neg++;

 if (mass[i] > max) {

  max = mass[i];

  maxind = i;

 }

 if (mass[i] < min) {

  min = mass[i];

  minind = i;

 }

 cout << setw(3) << mass[i];

}

cout << endl << endl;

if (pos > neg) {

 swap(mass[maxind], mass[minind]);

 cout << "Измененный массив:" << endl;

 for (int i = 0; i < N; i++) {

  cout << setw(3) << mass[i];

 }

}

else cout << "Массив не изменился";

cout << endl;

 

delete[] mass;

system("pause");

return 0;

}

Задание 2:

using namespace std;

#include <iostream>

#include <clocale>

#include <cstdlib>

#include <iomanip>

#include <string>

#include <ctime>

int main() {

setlocale(LC_ALL, "rus");

system("chcp 1251");

srand(time(0));

 

int N = rand() % 6 + 5;

int max = -20, min = 20, maxind, minind;

int* mass = new int[N];

cout << "Массив:" << endl;

for (int i = 0; i < N; i++) {

 mass[i] = rand() % 41 - 20;

 if (mass[i] > max) {

  max = mass[i];

  maxind = i;

 }

 if (mass[i] < min) {

  min = mass[i];

  minind = i;

 }

 cout << setw(3) << mass[i];

}

cout << endl << endl;

if (abs(minind - maxind) == 1) {

 cout << "Измененный массив:" << endl;

 for (int i = 0; i < N; i++) {

  if (mass[i] < 0) mass[i] = 0;

  cout << setw(3) << mass[i];

 }

}

else cout << "Массив не изменился";

cout << endl;

 

delete[] mass;

system("pause");

return 0;

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота