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

реализация стека - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить количество положительных элементов массива, предшествующих первому отрицательному http://www.cyberforum.ru/cpp-beginners/thread676523.html
Определить количество положительных элементов массива, предшествующих первому отрицательному. Входной файл lb 4_17. in содержит в первой строке одно число – N (количество элементов массива А). Во...
C++ Повернуть матрицу по часовой стрелке Что нужно сделать, чтобы повернуть матрицу по часовой стрелке?? если меняешь i и j местами, но она повернется против часовой на 90 градусов, а нужно по часовой, уже и не знаю что делать?... http://www.cyberforum.ru/cpp-beginners/thread676499.html
C++ Верно ли, что все цифры данного четырехзначного числа различны
Используя оператор if, выполнить задание: Дано натуральное четырехзначное число n. Верно ли, что все четыре цифры числа различны, как, например, различны все 4 цифры следующих чисел: 0123,...
Списки: реализовать слияние трёх списков в один C++
Подскажите пожалуйста, как реализовать слияние трёх списков в один.
C++ Перегрузка оператора ввода и наследование http://www.cyberforum.ru/cpp-beginners/thread676477.html
Добрый день! Обращаюсь по такому поводу. Есть одна программа, в которой требуется перегрузить операторы ввода.вывода для одного из классов. Проблема в том, что этот класс - наследник и если...
C++ нужно найти ошибку в коде вот код: пишет ошибки такие : "expected expression before % token" "повторная декларация s без привязки" а еще делает замечание: "здесь была предыдущая декларация 's' " Разъясните что да как я... подробнее

Показать сообщение отдельно
fantamas
0 / 0 / 0
Регистрация: 21.10.2012
Сообщений: 4

реализация стека - C++

21.10.2012, 15:30. Просмотров 2178. Ответов 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
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
#include "stdafx.h"
#include <iostream>
#include <cstdlib>
#define N 1024
using namespace std;
struct ELEMENT
{
int Content;
ELEMENT *Next;
};
typedef ELEMENT *LPELEMENT;
class STACK
{
public:
void initial();
int Push(int Content);
int Pop(int &Content);
int Empty(int Content);
int Full(int Content);
void OutPut();
public:
LPELEMENT Start;
};
 
 
void STACK::initial()
{
Start=NULL;
}
 
int STACK::Empty(int Content)
{
if (Content==0)
return 1;
else
return 0;
 
}
 
int STACK::Full(int Content)
{
if (Content==N)
return 1;
else
return 0;
 
}
 
int STACK::Push(int Content)
{
LPELEMENT NE=new ELEMENT;
if(!NE)
return 0;
NE->Content=Content;
NE->Next=Start;
Start=NE;
return 1;
}
 
int STACK::Pop(int &Content)
{
if(!Start)
return 0;
Content=Start->Content;
LPELEMENT Temp=Start;
Start=Start->Next;
delete Temp;
return 1;
}
 
void STACK::OutPut()
{
if(!Start)
{
printf("стек пуст\n");
return;
}
LPELEMENT Temp=Start;
while(Temp)
{
printf("%i\n",Temp->Content);
Temp=Temp->Next;
}
}
 
void main()
{setlocale(LC_ALL,"Russian");
STACK Stack;
int x;
char c;
 
do
{
cout << "1. Добавление элемента в вершину стека" << endl
<< "2. Удаление элемента из вершины стека" << endl
<< "3. Вывести элементы стека" << endl
<< "4. Проверка пустоты стека" << endl
<< "5. Проверка заполненности стека" << endl
<< "0. Выход" << endl;
cin >> c;
switch(c)
{
case '1':
if (Stack.Full(x)==1)
cout << endl << "Стек полный" << endl;
else
{
Stack.Push(x);
cout << endl << "Элемент добавлен в стек" << endl;
}
break;
case '2':
if (Stack.Empty(x)==1)
cout << endl << "Стек пуст" << endl;
else
{
Stack.Pop(x);
cout << endl << "Элемент удален из стека" << endl;
}
break;
case '3':
if (Stack.Empty(x)==1)
cout << endl << "Стек пуст" << endl;
else
{
cout << endl << "Элементы стека" << endl;
Stack.OutPut();
cout << endl;
}
break;
case '4':
if (Stack.Empty(x)==1)
cout << endl << "Стек пуст" << endl;
else
cout << endl << "В стеке "<< ELEMENT.Content <<" элемента" << endl; // тут
case '5':
if (Stack.Full(x)==1)
cout << endl << "Стек полный" << endl;
else
cout << endl << "Есть возможность добавить " << N-ELEMENT.Content << " элементов" << endl; // тут 
break;
 
case'0':
break;
default:
cout << endl << "Ошибка" << endl;
break;
}
}while(c!='0');
cin.get();
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.