0 / 0 / 0
Регистрация: 29.11.2017
Сообщений: 87
1

Как переместить из одного стека в другой

22.03.2018, 12:31. Показов 3307. Ответов 0
Метки нет (Все метки)

Есть стек в котором мы находим min и max ,как элементы стоящие между мин и макс переместить во 2 стек




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
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include "stdafx.h"
//#include <stack> 
#include <iostream>
#include <cstdio>
#include <cstdint>
 
struct Stack {
    int info;
    Stack *next;
} *begin, *t;
 
struct Stack2 {
    int info;
    Stack2 *next;
} *begin2, *tt;
 
Stack* InStack(Stack *p, int in) {
    Stack *t = new Stack; 
    t->info = in; 
    t->next = p; 
    return t;
}
 
void View(Stack *p) {
    Stack *t = p;
    while (t != NULL) {
       printf_s("%d ", t->info);
        t = t->next;
    }
}
 
Stack* OutStack(Stack* p, int *out) {
    Stack *t = p;    // Устанавливаем указатель t на вершину p
    *out = p->info;
    p = p->next;     // Переставляем вершину p на следующий
    delete t;        // Удаляем бывшую вершину t
    return p;        // Возвращаем новую вершину p
}
 
void Del_All(Stack **p) {    //освобождение памяти
    Stack *t;
    while (*p != NULL) {
        t = *p;
        *p = (*p)->next;
        delete t;
    }
}
 
void Sort_p(Stack **p) {
    int min = begin->info;
    Stack *s;
    for (s = begin; s != NULL; s = s->next)
    {
        if (s->info > min) {
            min = s->info;
        }
 
    }
    int max = begin->info;
    for (s = begin; s != NULL; s = s->next)
    {
        if (s->info < max) {
            max = s->info;
        }
 
    }
    puts("Максимальный-");
    printf("%d\n", min);
    puts("Минимальный-");
    printf("%d\n", max);
 
 
 
}
 
 
int main()
{
    setlocale(LC_ALL, "rus");
    int a, i, n, in, kod;
    while (true) {
        puts("\n Создать – 1\n Добавить – 2\n Просмотреть – 3\n Удаляем - 4\n Решение - 5\n Выход - 0\n ");
        scanf_s("%d", &kod);
        switch (kod) {
        case 1: case 2:
            if (kod == 1 && begin != NULL) {
                puts("\nClear Memory!\n");
                break;
            }
            puts("\n Количество = ");
            scanf_s("%d", &n);
            for (i = 1; i <= n; i++) {
                in = rand() % 20 + 0;
                begin = InStack(begin, in);
            }
            if (kod == 1) {
                puts("Создаем");
                scanf_s("%d", &n);
            }
            else {
                puts("Добавляем");
                scanf_s("%d", &n);
            }
            break;
        case 3:
            if (!begin) {
                puts("\n\t---Стек пуст---\n");
                break;
            }
            puts("---Стек---");
            View(begin);
            break;
        case 4:
            Del_All(&begin);
            puts("\t---Память очищена---");
            break;
        case 5:
            Sort_p(&begin);
            break;
        case 0:
            if (begin != NULL)
            Del_All(&begin);
            exit(0);
            break;
            
        }
    }
        return 0;
    
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.03.2018, 12:31
Ответы с готовыми решениями:

Из одного файла переместить текст в другой файл с заменой текста на другой
Помогите нужно сделать вот такую вещь заготовка есть но не могу осмыслит как сделать вот это: ...

Написать программу замены одного стека на другой
Задание: написать программу замены одного стека на другой. Помогите, пожалуйста

Из одного стека перенести элемент в другой стек
Как организуется стек(и)? Каким образом можно из одного стека перенести в другой стек элемент?

Написать программу копирования одного стека в другой
Изучаем стеки. Дано задание: Написать программу копирования одного стека в другой. Помогите...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2018, 12:31
Помогаю со студенческими работами здесь

Как переместить терминальный ноль из одного места строки в другое?
Здравствуйте. Пожалуйста, подскажите, что можно сделать, чтобы решить следующую проблему:...

Переместить элементы из одного стека в другой
Дано указатели p1 и p2 на вершинах двух непустых стеков. Переместить все элементы из первого стека...

Как переместить информацию из одного регистра в другой
Добрый день. Подскажите пожалуйста как сделать перенос из одного регистра в другой. Так чтоб для...

Как переместить данные из одного StringGridа в другой StringGrid??
Надо ввести в StringGrid1 (размером 3х4) данные и вывести его первые две строки в StringGrid2...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru