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

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

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

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

Ответ:
Dianapro111
Dianapro111
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
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?