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

Со стеком запутался - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Размещения http://www.cyberforum.ru/cpp-beginners/thread373493.html
Требуется сгенерировать все r-размещения без повторов с елементов {1...n} по в лексикографическом порядке...(r<=n) помогите пожалуйста.
C++ Непонятный формат года в tm инициализированной localtime Собственно в название темы и есть вопрос - почему данный фрагмент выводит год равным не 2011, не 11, а 111? Как сделать что бы tm_year содержала год 2011 без извращенских костылей? #include <iostream> #include <time.h> #include <stdio.h> int YY; int main() { time_t t2; tm *t1; time(&t2); http://www.cyberforum.ru/cpp-beginners/thread373485.html
C++ Помогите пожалуйста с уравнением.
Помогите это уравнение сделать. Заранее благодарен.
Составить алгоритм решения неравенства ax2+bx+c<0 C++
Доброго времени суток! Ветвлением нужно. Используя только if и else. Помогите пожалуйста! С/С++ Без использования while и функций...
C++ Ввод двумерного массива (построчно) с клавиатуры http://www.cyberforum.ru/cpp-beginners/thread373432.html
Всем Привет. Прошу вас, объясните мне простым языком, как организовать ввод двумерного массива (построчно) с клавиатуры. Вот, что у меня получилось...не понимаю, как правильно нужно делать ввод массива внутри Цикла For. {int x,y,i,a; cout<<"Enter Number String"; cin>>x; cout<<"Enter Number Columns";
C++ Помогите разобраться(С)Cпособы передачи аргументов в вызываемые функции: по значению, указателю и ссылке Вычисление текущих значений Y(x) и S(x) (где x принадлежит диапазону ) реализовать в виде отдельных функций. При выполнении задания продемонстрировать следующие способы передачи аргументов в вызываемые функции: по значению, указателю и ссылке. Вот функции записаны на Си: 1 функция ( s=pow(-1,k)*pow(2*a,2*k)/(2*k)! ) 2. y=2*pow(cos(a),2)-1; Помогите написать функцию для... подробнее

Показать сообщение отдельно
Профан
0 / 0 / 0
Регистрация: 06.06.2011
Сообщений: 49
27.10.2011, 16:51  [ТС]     Со стеком запутался
Как думаете это можно назвать Стек на базе массива

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
153
        #include "StackLi.h"
        #include <iostream.h>
 
        
        template <class Object>
        class Stack
        {
          public:
            explicit Stack( int capacity = 10 );
 
            bool isEmpty( ) const;
            bool isFull( ) const;
            const Object & top( ) const;
 
            void makeEmpty( );
            void pop( );
            void push( const Object & x );
            Object topAndPop( );
 
          private:
            vector<Object> theArray;
            int            topOfStack;
        };
        
        /**
         * Construct the stack.
         */
        template <class Object>
        Stack<Object>::Stack( )
        {
            topOfStack = NULL;
        }
 
        /**
         * Copy constructor.
         */
        template <class Object>
        Stack<Object>::Stack( const Stack<Object> & rhs )
        {
            topOfStack = NULL;
            *this = rhs;
        }
 
        /**
         * Destructor.
         */
        template <class Object>
        Stack<Object>::~Stack( )
        {
            makeEmpty( );
        }
 
        /**
         * Test if the stack is logically full.
         * Return false always, in this implementation.
         */
        template <class Object>
        bool Stack<Object>::isFull( ) const
        {
            return false;
        }
 
        /**
         * Test if the stack is logically empty.
         * Return true if empty, false otherwise.
         */
        template <class Object>
        bool Stack<Object>::isEmpty( ) const
        {
            return topOfStack == NULL;
        }
 
        /**
         * Make the stack logically empty.
         */
        template <class Object>
        void Stack<Object>::makeEmpty( )
        {
            while( !isEmpty( ) )
                pop( );
        }
 
        /**
         * Get the most recently inserted item in the stack.
         * Return the most recently inserted item in the stack
         * or throw an exception if empty.
         */
        template <class Object>
        const Object & Stack<Object>::top( ) const
        {
            if( isEmpty( ) )
                throw Underflow( );
            return topOfStack->element;
        }
 
        /**
         * Remove the most recently inserted item from the stack.
         * Exception Underflow if the stack is empty.
         */
        template <class Object>
        void Stack<Object>::pop( )
        {
            if( isEmpty( ) )
                throw Underflow( );
 
            ListNode *oldTop = topOfStack;
            topOfStack = topOfStack->next;
            delete oldTop;
        }
 
        /**
         * Return and remove the most recently inserted item
         * from the stack.
         */
        template <class Object>
        Object Stack<Object>::topAndPop( )
        {
            Object topItem = top( );
            pop( );
            return topItem;
        }
 
        /**
         * Insert x into the stack.
         */
        template <class Object>
        void Stack<Object>::push( const Object & x )
        {
            topOfStack = new ListNode( x, topOfStack );
        }
 
        /**
         * Deep copy.
         */
        template <class Object>
        const Stack<Object> & Stack<Object>::
        operator=( const Stack<Object> & rhs )
        {
            if( this != &rhs )
            {
                makeEmpty( );
                if( rhs.isEmpty( ) )
                    return *this;
 
                ListNode *rptr = rhs.topOfStack;
                ListNode *ptr  = new ListNode( rptr->element );
                topOfStack = ptr;
 
                for( rptr = rptr->next; rptr != NULL; rptr = rptr->next )
                    ptr = ptr->next = new ListNode( rptr->element );
            }
            return *this;
        }
 
Текущее время: 10:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru