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

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

Войти
Регистрация
Восстановить пароль
 
strag 93
1 / 1 / 0
Регистрация: 14.11.2010
Сообщений: 57
#1

Удалить из стека последний элемент - C++

30.05.2012, 11:55. Просмотров 405. Ответов 0
Метки нет (Все метки)

Информационное поле стека числовое. Удалить из стека последний елемент.

Добавлено через 48 минут
Вот есть стек, но он меняет местами.

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
#include<iostream>
#include<conio.h>
using namespace std;
struct node
{
float num;
node* next;
};
 
node* push (node* pop, float what);
node* pop (node* pop);
void printstack (node* top);
node* maximum(node*);
void change(node*, node*);
 
void main()
{
int n;
float what,max;
node* top=0;
node* p;
cout<<"Vvedite kol-vo el-tov steka: ";
cin>>n;
cout<<endl;
cout<<"Vvedite stek: "<<endl;
for (int i=1; i<=n; i++)
{
cin>>what;
top=push(top,what);
}
cout<<endl;
printstack(top);
 
cout<<endl;
change(top,maximum(top));
cout<<endl;
cout<<"Final stack"<<endl<<endl;
printstack(top);
 
}
 
node* maximum(node* top)
{
float max=0;
node* pmax;
while (top)
 {
    if (top->num > max)      
    {
    max=top->num;
    pmax=top;           
    }
    top=top->next;
 }
return pmax;
}
 
 
void change(node* top, node* p)
{
float neww;
neww=top->num;
top->num=p->num;                  
p->num=neww;
 
}
 
 
node* push (node* top, float what)
{
node* pv= new node;
pv->num=what;
pv->next=top;
return pv;
}
 
void printstack (node* top)
{
float what;
cout<<"stack: "<<endl;
 
    while (top)
    {
    cout<<top->num<<"  ";
    top=top->next;
    }
 
cout<<endl;
}
 
node* pop(node* top)
{
node* pv=top->next;
delete top;
return pv;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2012, 11:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Удалить из стека последний элемент (C++):

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

Структура стек (: добавить элемент в стек, удалить элемент из стека, получить значение с вершины стека, размер стека...) - C++
Всем привет,ребят помогите пожалуйста с лабой,вообще без понятия про стеки:( Может кто то делал,или встречался с таким заданием: ...

Удалить элемент из стека по условию и добавить элемент в начало стека - C++
Здравствуйте, помогите пожалуйста исправить(дописать) программы. 1). Нужно удалить элемент, находящийся в середине стека , если число...

Задача Иосифа Флавия. Удалить каждый второй элемент из списка и в конце вывести на экран последний оставшийся элемент - C++
Создать циклический список, в котором находятся элементы от 1 до N. Нужно написать программу, которая удаляет каждый второй элемент из...

Удалить предпоследний элемент из стека - C++
Подскажите, как удалить предпоследний элемент из стека. В данном примере сделал удаление последнего элемента: #include &lt;iostream&gt; ...

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

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.05.2012, 11:55
Привет! Вот еще темы с ответами:

Удалить каждый второй элемент стека - C++
Заполнить стек значениями произвольно выбранного типа. Удалить каждый второй элемент стека. Есть стек,как удалять элементы? ...

Удалить последний элемент массива - C++
Может кто помочь как можно удалить последний элемент массива, токо не используя встроеных стеков деков списков и .т.д ?

Удалить из списка последний элемент - C++
Задание: Удалить из списка последний элемент. #include&lt;iostream.h&gt; #include&lt;conio.h&gt; struct elem { int Data; elem *Next; ...

Удалить последний элемент очереди - C++
Нужно удалить последний элемент очереди. struct node { node *next; int info; }; void deleteLastElement(node*&amp;el, node*begin,...


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

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

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