Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 18
1

Стек на массиве

29.04.2013, 15:27. Просмотров 494. Ответов 5
Метки нет (Все метки)

Здравствуйте! Надо создать стек на массиве, не используя ссылки, указатели, ... Дан только массив. После создания стека на массиве, нужно написать функции: добавления элемента, удаления /-/, размер стека и номер последнего элемента
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.04.2013, 15:27
Ответы с готовыми решениями:

Стек на массиве
Прошу помочь решить проблему со стеком на массиве. Не могу скомпилировать программу, выдаёт ошибки...

Стек на саморасширяющемся массиве
надо реализовать работу стека. использовать самостоятельно написанный вектор подскажите,...

Стек и очередь на массиве
Здравствуйте, дорогие программисты! Скиньте, пожалуйста, исходники стека и очереди для...

Стек на статическом массиве
Может кто-нибудь написать стек на статическом массиве. Т.е чтобы был объявлен массив, объявлен...

5
414 / 413 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
29.04.2013, 15:42 2
Crachc, что накодили?
0
7 / 7 / 3
Регистрация: 23.03.2013
Сообщений: 58
29.04.2013, 15:45 3
если с пределом размера то вот
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
#include <iosteam> //куда без него
 
enum {stackSize = 1000};// общий размер стёка
int stack[1000];//стёк типа int, можеш и другой если хочеш
int currStackSize = 0;//переменная указывающая на заполненность стёка
 
bool push(int value);
int pop(void);
 
int main(){
    //тут твой код
    ...
    return 0;
}
// функция push добавляет... ну ты понял, если в стёк добавился элемент то вернёт true иначе false
bool push(int value){
    if (currStackSize >= stackSize );
        return false;
    stack[currStackSize] = value;
    currStackSize ++;
    return true;
}
// если в стёке есть элемент то функция удалит и венет его иначе вернёт NULL
int pop(void){
    if (currStackSize == 0)
        return '\0';
    return stack[--currStackSize];
}
ну а если безразмерный массив то так не реально
используй для этого vector
0
414 / 413 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
29.04.2013, 15:54 4
Цитата Сообщение от _dude01 Посмотреть сообщение
ну а если безразмерный массив то так не реально
реально если перевыделять память
0
7 / 7 / 3
Регистрация: 23.03.2013
Сообщений: 58
29.04.2013, 15:58 5
Цитата Сообщение от Кудаив Посмотреть сообщение
реально если перевыделять память
да но утечка памяти это не круто)
и к тому же запрос был "без указателей, ссылок etc."
0
414 / 413 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
29.04.2013, 16:11 6
Цитата Сообщение от _dude01 Посмотреть сообщение
да но утечка памяти это не круто)
если по уму то никаких утечек))


Crachc, динамическим массивом то пользоваться можно?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.04.2013, 16:11

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Динамически растущий стек на массиве, исправить ошибки
Есть код. В строках с номерами 22, 27 и 44 получаю ошибки. Помогите исправить ситуацию. Ошибка:...

Реализовать стек на массиве с использованием двунаправленного списка
здраствуйте, может кто-то пожалуйста привести реализацию примера стека, реализованого на ...

Стек на массиве (выводит значение даже при пустом стеке)
Здравствуйте, есть код со стеком, вопрос касательно метода класса,а точнее о выводе элемента из...

Стек. Создать случайно генерированный стек и поменять местами первый элемент с i
Как создать случайно генерированный стек (тип элементов CHAR) и поменять местами первый элемент с i...


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

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

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