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

используя одномерный массив поменять местами первый минимальный и последний максимальный элементы

с++
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Плотникова Даша.
#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
0 0
Отвечает нейросеть 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.

0 0

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

Последние заданные вопросы в категории Информатика

Задать вопрос