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

Поменять наибольший и наименьший элемент последовательности местами - C++

Восстановить пароль Регистрация
 
Аннaa
1 / 1 / 0
Регистрация: 21.10.2013
Сообщений: 115
20.11.2014, 22:14     Поменять наибольший и наименьший элемент последовательности местами #1
Дана последовательность из 10 чисел. Поменять наибольший и наименьший элемент местами (рассмотреть вариант когда их несколько)
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
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
 
using namespace std;
 
int main()
{
int mas[10];
srand(time(NULL));
 
for( int i = 0; i < 10; i++)
     mas[i]=rand() % 10;
for( int i = 0; i < 10; i++)
     cout << mas[i] << ' ' ;
      cout << "\n" ;
 int max=mas[0], min=mas[0], max1=0,  min1=0;
 
for( int i = 0; i < 10; i++)
{
    if(mas[i]> max)  { max = mas[i]; max1=i;}
    if(mas[i]< min)  { min = mas[i]; min1=i;}
}
 
    mas[min1]=max1;
    mas[max1]=min1;
 
 
    for(int i=0;i<10;i++)
    {
        cout<<mas[i]<< ' ';
    }
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2014, 22:14     Поменять наибольший и наименьший элемент последовательности местами
Посмотрите здесь:

C++ Поменять местами наибольший и наименьший элементы?
C++ Поменять местами наибольший и наименьший элементы
C++ Создать одномерный массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент элементы
C++ Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23
C++ В матрице поменять местами строку, содержащую наибольший элемент, со строкой, содержащей наименьший
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nosey
 Аватар для Nosey
1185 / 352 / 102
Регистрация: 22.10.2014
Сообщений: 791
Завершенные тесты: 2
21.11.2014, 00:11     Поменять наибольший и наименьший элемент последовательности местами #2
Цитата Сообщение от Аннaa Посмотреть сообщение
C++
1
2
mas[min1]=max1;
mas[max1]=min1;
max1 и min1 у вас это индексы, а max и min значения.
Вы присваиваете в место максимального значения, индекс в котором расположено минимальное значение. Минимальное значение соответственно также.
Аннaa
1 / 1 / 0
Регистрация: 21.10.2013
Сообщений: 115
21.11.2014, 12:31  [ТС]     Поменять наибольший и наименьший элемент последовательности местами #3
все равно не верно выводит !
nmcf
4326 / 3747 / 1262
Регистрация: 14.04.2014
Сообщений: 14,710
21.11.2014, 13:44     Поменять наибольший и наименьший элемент последовательности местами #4
Пример массива до и после приведи.
Аннaa
1 / 1 / 0
Регистрация: 21.10.2013
Сообщений: 115
21.11.2014, 13:59  [ТС]     Поменять наибольший и наименьший элемент последовательности местами #5
до 6 1 8 0 7 4 8 0 1 1
после 6 1 2 3 7 4 8 0 1 1
nmcf
4326 / 3747 / 1262
Регистрация: 14.04.2014
Сообщений: 14,710
21.11.2014, 14:22     Поменять наибольший и наименьший элемент последовательности местами #6
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
int main()
{
int mas[10];
srand(time(NULL));
 
for( int i = 0; i < 10; i++)
     mas[i]=rand() % 10;
for( int i = 0; i < 10; i++)
     cout << mas[i] << ' ' ;
      cout << "\n" ;
 int max=mas[0], min=mas[0], max1=0,  min1=0;
 
for( int i = 0; i < 10; i++)
{
    if(mas[i]> max)  { max = mas[i]; max1=i;}
    if(mas[i]< min)  { min = mas[i]; min1=i;}
}
 
for( int i = 0; i < 10; i++)
{
    if(mas[i] == max) mas[i] = min;
    else
        if(mas[i] == min) mas[i] = max;
}
 
 
    for(int i=0;i<10;i++)
    {
        cout<<mas[i]<< ' ';
    }
 
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2014, 14:31     Поменять наибольший и наименьший элемент последовательности местами
Еще ссылки по теме:

C++ Поменять местами наибольший и наименьший элементы
Поменять местами наибольший и наименьший элемент массива в диапазоне от 0 до 25. Массив рандомный C++
C++ Поменять местами в последовательности наибольший и наименьший члены с помощью указателей

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

Или воспользуйтесь поиском по форуму:
Аннaa
1 / 1 / 0
Регистрация: 21.10.2013
Сообщений: 115
21.11.2014, 14:31  [ТС]     Поменять наибольший и наименьший элемент последовательности местами #7
спасибо большое!
Yandex
Объявления
21.11.2014, 14:31     Поменять наибольший и наименьший элемент последовательности местами
Ответ Создать тему
Опции темы

Текущее время: 15:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru