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

Стек на массиве (выводит значение даже при пустом стеке) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Перевести код с паскаля на C++ http://www.cyberforum.ru/cpp-beginners/thread1118690.html
//Помогите пожалуйста перевести с паскаля на С++ uses crt; type PList=^TList; TList=record inf:string; link:PList; end; var h,head,Pk:PList; s1, s2,k: string;
C++ Написать программу для подсчета количества одинаковых цифр в массиве из 5-ти элементов Только начал разбиратся в массивах. Помогите решыть. Написать программу для подсчета количества одинаковых цифр в массиве из 5-ти элементов. http://www.cyberforum.ru/cpp-beginners/thread1118683.html
C++ Подключение .h файлов друг в друга
Здравствуйте. Появилась такая проблема: есть два .h файла, и они перекликаются содержимым: в одном наследуется класс из другого, а в другом просто используется класс из первого. В итоге программа не может скомпилироваться из-за того что что-то не объявлено, хотя всё ок. Если менять порядок их инклюдов, ошибки появляются в первом подключенном аш файле. Что делать? Алсо в каждом .h использую...
C++ Есть какая нибудь информация по созданию алгоритма или программы для автопилота
Есть какая нибудь информация по созданию алгоритма или программы для автопилота,интернет облазил,ничего не нашёл.
C++ Реализовать систему плагинов (модулей), каждый из которых должен работать в отдельном потоке http://www.cyberforum.ru/cpp-beginners/thread1118641.html
Всем доброго времени суток, не могли бы вы мне помочь реализовать систему плагинов( модулей). Необходимо что бы: - каждый плагин работал в своем потоке; - Ядро - приложение вызывала функции - события в плагине, если они "зарегистрированы" - Плагин может вызывать функции ядра Буду благодарен за помощь.=)
C++ Сформировать матрицу NхN, элементы ниже побочной диагонали которой являются отрицательными числами Помогите пожалуйста! Нужно сформировать матрицу NхN, элементы ниже побочной диагонали которой являются отрицательными числами. подробнее

Показать сообщение отдельно
mirag0505
0 / 0 / 0
Регистрация: 22.04.2013
Сообщений: 17
14.03.2014, 01:09     Стек на массиве (выводит значение даже при пустом стеке)
Здравствуйте, есть код со стеком, вопрос касательно метода класса,а точнее о выводе элемента из стека - pop(). Дело в том что программа выводит значения стека, даже когда он пуст,это же приводит к ошибке. Как правильно реализовать проверку на пустоту стека и изменить метод для правильной работы проги?
C++
1
2
3
4
5
int Stack::pop()
{
if (top > 0)
return max_stack[--top]; // вытаскиваем из стека
}
САм код программы:
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
#include<iostream>
using namespace std;
 
const int max_size = 15;
class Stack
{
public:
int var;//значение элементов стека
int top;//вершина стека, счетчик
int max_stack[max_size];//массив
Stack(); // конструктор класса
void push();//добавление элементов
int pop();//удаление
};
Stack::Stack()
{
top = 0; // инициализируем переменные
var = 0; // для корректной работы
}
 
void Stack::push()
{
if (top <= max_size)
max_stack[top++] = var; // заносим в стек
}
int Stack::pop()
{
if (top > 0)
return max_stack[--top]; // вытаскиваем из стека
}
void main()
{
Stack s; //создание объекта класса
cout « "Введите элементы стека" « endl;
cin » s.var;
cin » s.var;
s.push();
cout « s.pop() « endl; // выводим последний элемент.
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru