
Вопрос задан 10.04.2021 в 13:21.
Предмет Информатика.
Спрашивает Николаев Руслан.
используя одномерный массив поменять местами первый минимальный и последний максимальный элементы
с++

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

Отвечает Плотникова Даша.
#include <iostream>
using namespace std;
int main() {
const int n = 10;
int a[n];
int min, max, imin, imax;
srand(time(0));
for (int i = 0; i < n; i++) {
a[i]=rand() % 5 +1;
cout << a[i] << " ";
}
cout <<"\n";
min = a[0]; imin = 0;
max = a[0]; imax = 0;
for (int i = 1; i < n; i++){
if (a[i]<min) {min = a[i]; imin = i;}
if (a[i]>=max) {max = a[i]; imax = i;}
}
a[imin] = max;
a[imax] = min;
for (int i = 0; i < n; i++) {
cout << a[i] << " ";
}
cout <<"\n";
return 0;
}
Пример:
4 5 4 2 4 3 5 4 4 2
4 5 4 5 4 3 2 4 4 2
using namespace std;
int main() {
const int n = 10;
int a[n];
int min, max, imin, imax;
srand(time(0));
for (int i = 0; i < n; i++) {
a[i]=rand() % 5 +1;
cout << a[i] << " ";
}
cout <<"\n";
min = a[0]; imin = 0;
max = a[0]; imax = 0;
for (int i = 1; i < n; i++){
if (a[i]<min) {min = a[i]; imin = i;}
if (a[i]>=max) {max = a[i]; imax = i;}
}
a[imin] = max;
a[imax] = min;
for (int i = 0; i < n; i++) {
cout << a[i] << " ";
}
cout <<"\n";
return 0;
}
Пример:
4 5 4 2 4 3 5 4 4 2
4 5 4 5 4 3 2 4 4 2



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Конечно! Вот пример кода на C++, который меняет местами первый минимальный и последний максимальный элементы одномерного массива:
cpp#include <iostream>
void swapMinMax(int arr[], int size) {
// Ищем минимальный и максимальный элементы
int min = arr[0];
int max = arr[0];
int minIndex = 0;
int maxIndex = 0;
for (int i = 1; i < size; i++) {
if (arr[i] < min) {
min = arr[i];
minIndex = i;
}
if (arr[i] > max) {
max = arr[i];
maxIndex = i;
}
}
// Меняем местами минимальный и максимальный элементы
int temp = arr[minIndex];
arr[minIndex] = arr[maxIndex];
arr[maxIndex] = temp;
}
int main() {
const int size = 10;
int arr[size] = {5, 2, 9, 1, 7, 3, 8, 4, 6, 0};
std::cout << "Исходный массив: ";
for (int i = 0; i < size; i++) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
swapMinMax(arr, size);
std::cout << "Массив после замены: ";
for (int i = 0; i < size; i++) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}
Этот код объявляет функцию swapMinMax
, которая принимает одномерный массив arr
и его размер size
. Внутри функции мы ищем минимальный и максимальный элементы массива, а затем меняем их местами, используя временную переменную temp
.
В функции main
мы создаем массив с исходными значениями и выводим его на экран. Затем вызываем функцию swapMinMax
, передавая ей массив и размер, и выводим измененный массив после замены.
Пример вывода:
Исходный массив: 5 2 9 1 7 3 8 4 6 0 Массив после замены: 5 2 9 1 7 3 0 4 6 8
В данном примере первый минимальный элемент 1
был поменялся местами с последним максимальным элементом 8
.


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