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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
egzest
0 / 0 / 0
Регистрация: 09.01.2012
Сообщений: 8
#1

Поменять местами минимальный и максимальный элемент - C++

05.05.2012, 20:34. Просмотров 1570. Ответов 5
Метки нет (Все метки)

Помогите сделать задачу, не понимаю как делать. Создать стек из случайных чисел и поменять местами минимальный и максимальный элементы. Знаю как найти максимальный и минимальный, а вот как их поменять..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2012, 20:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поменять местами минимальный и максимальный элемент (C++):

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

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

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

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

В матрице поменять максимальный и минимальный элемент местами - C++
#include <iostream> #include <iomanip> using namespace std; int main() { setlocale(0, ".1251"); double a; int i, j; for (i...

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

5
Avazart
Эксперт С++
7213 / 5385 / 286
Регистрация: 10.12.2010
Сообщений: 23,790
Записей в блоге: 17
05.05.2012, 20:47 #2
C++
1
2
3
4
5
6
7
8
9
10
void swap(int& a,int& b)
{
int temp=a;
a=b;
b=temp;
}
//...
int A[10];
//...
swap(A[0],A[5]); // поменять местами 0 и 5 эл-ты
0
egzest
0 / 0 / 0
Регистрация: 09.01.2012
Сообщений: 8
05.05.2012, 20:48  [ТС] #3
Ха.. у меня же стек

C++ (Qt)
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include <iostream.h>
#include <stdlib.h>
struct tstk  
{  
    int inf;  
    tstk *a;  
};
 
 
tstk *add(tstk *sp, int inf)   
{   
    tstk *spt=new tstk; 
    spt->inf = inf; 
    spt->a = sp; 
    return spt;  
} 
 
void delstack(tstk *sp)  
{
    tstk *t;
    while(t=sp)
    {
        sp=sp->a;
        delete t;
    }
} 
 
 
void showstack(tstk *sp)  
{
    while(sp)
    {
        cout<<sp->inf<<" ";
        sp=sp->a;
    }
    cout<<endl;
}
 
int main()
{
    tstk *sp=NULL;
 
    
    int n,k; 
 
    cout<<"vvedi n: ";
    cin>>n; 
 
    for( int i=0;i<n;i++)
    {   
        cin>>k;     
        sp=add(sp,k);
    }
 
    showstack(sp);
    tstk *t=sp;
    int min,max;
    min=max=sp->inf;
    do 
    {
        if (t->inf > max) max=t->inf; 
        if (t->inf < min) min=t->inf; 
    } while(t=t->a);
    cout<<"min="<<min<<" max="<<max<<endl;
    delstack(sp);
    return 0;
}
0
Avazart
Эксперт С++
7213 / 5385 / 286
Регистрация: 10.12.2010
Сообщений: 23,790
Записей в блоге: 17
05.05.2012, 20:48 #4
Принцип тот же нужен буфер, просто менять будете указатели
0
egzest
0 / 0 / 0
Регистрация: 09.01.2012
Сообщений: 8
05.05.2012, 20:53  [ТС] #5
Я ж не могу просто так с середины стека вынуть элементы, мне надо как то поднять кусок стека достать максимальный элемент, затем ещё поднять кусок стека туда вставить ....

А как этот буфер реализовать то?? в этом и загвоздка
0
Avazart
Эксперт С++
7213 / 5385 / 286
Регистрация: 10.12.2010
Сообщений: 23,790
Записей в блоге: 17
05.05.2012, 21:05 #6
Можно менять сами значения inf;
А можно менять указатели a в указанном элементе и элементе который стоит до.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.05.2012, 21:05
Привет! Вот еще темы с ответами:

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

Поменять местами максимальный и минимальный элемент матрицы - C++
Здравствуйте. Задача вроде бы простая, но у меня возникло затруднение. Искал подобные, но свою ошибку увидеть не могу в упор. Суть...

Поменять местами минимальный и максимальный элемент массива Z - C++
Записать четные положительные элементы целочисленных массивов X и Y в мас- сив Z. Поменять местами минимальный и максимальный элемент...

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


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
05.05.2012, 21:05
Ответ Создать тему
Опции темы

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