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

Структуры данных(СТЕК) - C++

Восстановить пароль Регистрация
 
papik1234567890
0 / 0 / 0
Регистрация: 13.12.2012
Сообщений: 14
19.04.2013, 20:37     Структуры данных(СТЕК) #1
Помогите написать, или исправьте, плиз, мою программку. Здесь - стек. надо создать меню, где можно вывести, создать и удалить элемент со стека.

Вот мой вариант программки(но там, почему-то не определяет функции):

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
#include <iostream>
#include <string>
 
using namespace std;
 
int N_used=0;
int arr[100];
 
struct Stack{
    int arr[100];
    int N_used;
 
    // Добавление
    void push(int val){
        arr[N_used]=val;
        N_used++;
    }
 
// Удаление
    int pop(){
        N_used--;
 
        return arr[N_used];
    }
// Распечатать
    void print(){
 
        for (int i=0; i<N_used; i++){
            cout<<arr[i]<<endl;
    }
    }
};
 
int main(){
 
    int val;
 
    
    while (1)
    {
    
    cout<<"\n"<<"\t"<<"MENU:"<<"\t"<<endl;
    
        cout<<"1. Print:"<<"\n"<<"2. Add."<<"\n"<<"3. Delete."<<"\n"<<"4.Exit.\n"<<endl;
        int vub;
                
        cin>>vub;
        switch (vub)
        {
            case 1:
                print();
                    break;
 
            case 2:
                push(val);
                break;
                
            case 3:
                pop();
                break;
            case 4:
                
                return 0;   
    }
        
    }
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.04.2013, 20:37     Структуры данных(СТЕК)
Посмотрите здесь:

C++ Динамические структуры данных.Стек.
Стек без использования классов- только структуры C++
C++ Динамические структуры. Стек (помогите найти ошибку)
C++ Проверить существование данных и посчитать количество данных (стек)
C++ Программа, которая будет добавлять структуры заказчиков в стек и удалять из стека, представленного объявлением класса Stack
C++ Подскажите пожалуйста в чем ошибка?(С++,структуры,стек)
Динамические структуры данных.Стек. Значение выражения в постфиксной форме C++
Определить количество отличников по предмету на курсе с помощью структуры данных – «стек» C++
Вычислить выражения используя односвязные (стек) и двусвязные (очередь) информационные структуры C++
Динамическая структура данных (Стек) C++
C++ Как можно объединить в одну структуру стек (очередь) и дек, при этом не создавая 2 структуры?
C++ Стек. Что добавить в код, или как изменить его, чтобы в нём были структуры ?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
19.04.2013, 20:51     Структуры данных(СТЕК) #2
papik1234567890, ну вот как-то так

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
#include <iostream>
#include <iomanip>
#include <locale>
using namespace std;
 
struct StackNode
{
    int data;
    StackNode *next;
};
 
class Stack
{
    private:
        StackNode *Head;
 
    public:
        Stack()
        {
            Head = NULL;
        }
 
        void addToFront(int value)                  //добавление в начало
        {
            StackNode *Ptr = new StackNode;
            Ptr -> data = value;
 
            Ptr -> next = Head;
            Head = Ptr;
        }
 
        void delList()
        {
            StackNode *tmp = Head -> next;
 
            if(Head != NULL)
            {
                delete Head;
                Head = tmp;
            }
        }
 
        void showList()
        {
            StackNode *temp = Head;
 
            if(Head != NULL)
            {
                while(temp != NULL)
                {
                    cout << temp -> data << " ";
                    temp = temp -> next;
                }
            }
            else
                wcout << L"Стек пуст!\n";
        }
};
 
void instructions();
void menu();
 
int _tmain(int argc, _TCHAR* argv[])
{
    wcout.imbue(locale(".866"));
    wcin.imbue(locale(".866"));
 
    menu();
 
    cout << "\n\n";
    return 0;
}
 
void instructions()
{
    wcout << L"Выберите пункт меню: " <<
        L"\n1 - Добавить элемент в начало" <<
        L"\n2 - Удалить элемент" <<
        L"\n3 - Выход.\n";
}
 
void menu()
{
    Stack Universal;
    int punkt_menu, value;
 
    instructions();
 
    do{
        wcout << L"\n? ";
            cin >> punkt_menu;
 
            switch(punkt_menu)
            {
                case 1:
                    wcout << L"Введите число: ";
                        cin >> value;
 
                    Universal.addToFront(value);
                    Universal.showList();
                    break;
                case 2:
                    Universal.delList();
                    Universal.showList();
                    break;
            }
 
    }while(punkt_menu != 3);
}
Yandex
Объявления
19.04.2013, 20:51     Структуры данных(СТЕК)
Ответ Создать тему
Опции темы

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