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

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

Войти
Регистрация
Восстановить пароль
 
Аннaa
1 / 1 / 0
Регистрация: 21.10.2013
Сообщений: 115
#1

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

20.11.2014, 22:14. Просмотров 292. Ответов 6
Метки нет (Все метки)

Дана последовательность из 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;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2014, 22:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поменять наибольший и наименьший элемент последовательности местами (C++):

Поменять местами наибольший и наименьший элементы последовательности - C++
Даны действительные числа a1, a2, ..., an. Поменять местами наибольший и наименьший элементы. Заранее премного благодарен.

Поменять местами в последовательности наибольший и наименьший члены с помощью указателей - C++
Дано натуральное число n(n\leq 100) и последовательность целых чисел {a}_{1},{a}_{2},...{a}_{n} Поменять местами в этой...

Поменять в данной последовательности целых чисел местами наибольший и наименьший члены - C++
Поменять в данной последовательности целых чисел местами наибольший и наименьший члены.

Поменять местами наибольший и наименьший элемент массива в диапазоне от 0 до 25. Массив рандомный - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cstdlib&gt; #include &lt;time.h&gt; using namespace std; int main() { int min, max,...

В матрице поменять местами строку, содержащую наибольший элемент, со строкой, содержащей наименьший - C++
Задание: В данной действительной матрице размера mn поменять местами строку, содержащую элемент с наибольшим значением, со строкой,...

Создать одномерный массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент элементы - C++
Дана матрица А(5,3) 1 Создать новый одномерный массив,каждый элемент которого равен среднему арифметическому элементов соответствующей...

6
Nosey
1349 / 400 / 107
Регистрация: 22.10.2014
Сообщений: 863
Завершенные тесты: 2
21.11.2014, 00:11 #2
Цитата Сообщение от Аннaa Посмотреть сообщение
C++
1
2
mas[min1]=max1;
mas[max1]=min1;
max1 и min1 у вас это индексы, а max и min значения.
Вы присваиваете в место максимального значения, индекс в котором расположено минимальное значение. Минимальное значение соответственно также.
0
Аннaa
1 / 1 / 0
Регистрация: 21.10.2013
Сообщений: 115
21.11.2014, 12:31  [ТС] #3
все равно не верно выводит !
0
nmcf
5538 / 4848 / 1644
Регистрация: 14.04.2014
Сообщений: 19,670
21.11.2014, 13:44 #4
Пример массива до и после приведи.
0
Анн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
0
nmcf
5538 / 4848 / 1644
Регистрация: 14.04.2014
Сообщений: 19,670
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;
}
0
Аннaa
1 / 1 / 0
Регистрация: 21.10.2013
Сообщений: 115
21.11.2014, 14:31  [ТС] #7
спасибо большое!
0
21.11.2014, 14:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2014, 14:31
Привет! Вот еще темы с ответами:

Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 - C++
1 Создать новый одномерный массив , каждый элемент которого равен среднему арифметическому элементов соответствующей строки данной матрицы....

Поменять местами наибольший и наименьший элементы - C++
1. Даны действительные числа а1, а2, ... , аn. Поменять местами наибольший и наименьший элементы. 2. Даны целые числа а1,а2, ..., аn и...

Поменять местами наибольший и наименьший элементы? - C++
Даны действительные числа а1, а2, ... an

Поменять местами наибольший и наименьший элементы - C++
Ребят помогите пожалуйста. Даны действительные числа х1,...,хn (все числа попарно различны). Поменять местами наибольший и наименьший...


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

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

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