Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
novitsek
-4 / 0 / 0
Регистрация: 26.12.2013
Сообщений: 14
#1

Найти в массиве максимальный элемент и минимальный элемент, и поменять их местами - C++

17.01.2014, 11:16. Просмотров 1292. Ответов 2
Метки нет (Все метки)

Привет) помогите пожалуйста решить задачу. Дан целочисленный массив из m элементов. Найдите в нем максимальный элемент и минимальный элемент,и поменять их местами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <cstdlib>
#include <Windows.h>
using namespace std;
int main()
{
        SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int i;
    int m[10];
    int max,min;
    int temp;
    cout << "введите массив чисел" << endl;
    for(i=0;i<10;i++)
    cin>>m[i];
    max=0;
    {
        for(i=0;i<10;i++)
        if(m[i]>max)
        max=m[i];
    }
    min=1;
    {
        for(i=0;i<10;i++)
        if(m[i]<min)
        min=m[i];
    }
    for (int i=0;i<10;i++)
   if (min==m[i])
      m[i] = max;
   else if (max==m[i])
      m[i] = min;
for(int i=0; i<10; i++)
  cout << m[i] << " ";
   cout<<"\n\n";
  cout<<"min="<<min<<" max="<<max<<"\n";
return 0;
}
как сделать так чтоб менял только 1 допустим максимальный элемент а не все?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2014, 11:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти в массиве максимальный элемент и минимальный элемент, и поменять их местами (C++):

Поменять местами максимальный и минимальный элемент в массиве - C++
дан массив 4 на 4 в каждой строке поменять местами максимальный и минимальный элемент

В двумерном массиве поменять местами максимальный и минимальный элемент местами - C++
Написать фрагмент программы для решения следующей задачи.В двумерном массиве поменять местами максимальный и минимальный элемент местами....

В двумерном массиве поменять местами максимальный и минимальный элемент - C++
Всем доброго времени суток! Помогите пожалуйста с заданием, найти наибольший и наименьший элементы прямоугольной матрицы и поменять их...

Поменять минимальный и максимальный элемент местами в одномерном массиве - C++
Чёта туплю, не выводит второй массив: Нужно поменять минимальный и максимальный элемент местами в одномерном :jokingly: массиве . Не могу...

Матрица, найти и поменять местами минимальный и максимальный элемент - C++
Помогите с задачей: В квадратной матрице A найти среди элементов, расположенных ниже главной диагонали, минимальный элемент, а среди...

Найти максимальный и минимальный элемент массива и поменять их местами - C++
Задан массив целых чисел. Найти максимальный и минимальный элемент массива и поменять их местами Добавлено через 46 минут Написать...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Dzzirt
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 6
17.01.2014, 13:20 #2
Нужно помимо нахождения max и min сохранять индексы им соответствующие. И затем просто поменять их местами.
C++
1
2
m[iMax] = min;
m[iMin] = max;
0
Ev[G]eN
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
17.01.2014, 13:33 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <algorithm>
#include <iterator>
#include <iostream>
#include <random>
#include <array>
 
int main()
{
    std::default_random_engine generator;
    std::uniform_int_distribution <> distribution(-25, 25);
 
    const size_t arraySize(10);
    std::array <int, arraySize> array;
    std::cout << "Array: " << std::endl;
    std::generate(array.begin(), array.end(), [&]() -> int {
        return distribution(generator);
    });
    std::copy(array.begin(), array.end(), std::ostream_iterator <int> (std::cout, " "));
 
    auto minimal_maximalArrayElements(std::minmax_element(array.begin(), array.end()));
    std::iter_swap(minimal_maximalArrayElements.first, minimal_maximalArrayElements.second);
    std::cout << std::endl << "Array: " << std::endl;
    std::copy(array.begin(), array.end(), std::ostream_iterator <int> (std::cout, " "));
 
    std::system("pause >> temp");
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2014, 13:33
Привет! Вот еще темы с ответами:

Массивы: поменять местами минимальный по модулю элемент и максимальный отрицательный элемент - C++
Пусть А одномерный массив N-целых чисел. Ввести его случайным образом. а) поменять местами минимальный по модулю элемент и максимальный...

Поменять местами минимальный элемент с первым элементом массива, а максимальный элемент с последним - C++
Здравствуйте. Помогите пожалуйста написать программу: для поиска минимального и максимального элементов массива из 15 действительных чисел....

Найти максимальный отрицательный и минимальный положительный элемент и поменять их местами - C++
1) Дан массив из 20 чисел найти максимальный отрицательный и минимальный положительный элемент, поменять их местами. #include...

Найти максимальный и минимальный элемент в каждой строке матрицы и поменять их местами - C++
Дана матрица вещественных чисел N х М. Количество строк N и столбцов М задается пользователем. Найти максимальный и минимальный элемент в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru