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

Добавление строки в стек - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поразрядные операции http://www.cyberforum.ru/cpp-beginners/thread696792.html
Добрый вечер. Не понимаю по какому принципу решать второю часть задачи. Собственно вот: тема - Поразрядные операции. Задание: Даны два int-числа: N1 = ABCD и N2 = EFGH, где AB…GH – 16 – ричные цифры. Образовать long-число, используя только поразрядные операции: ACCDGHEF. В подчёркнутой группе цифр ССDG определить количество непересекающихся кодовых комбинаций 011. Собственно вот, что я...
C++ В последовательности поменять местами максимальный элемент и элемент с номером m Дано натуральное число m<20, действительные числа А1..А25 (попарно различные). В последовательности А1..А25 поменять местами МАХ-элемент и элемент с номером m. РЕШЕНИЕ НА С++. ПОМОГИТЕ ПОЖАЛУЙСТА! http://www.cyberforum.ru/cpp-beginners/thread696790.html
Функция для кодсчета количества слов C++
#include <stdio.h> #include <string.h> #include <conio.h> int vivod() { printf("Vvedide predlojenie\n"); } int mal(char *str)
C++ Определение классов
Определить классы, описывающие точку в полярной и декартовой системах координат. Составить и протестировать функции для: а) получения декартовых координат точки, если заданы ее полярные координаты; б) вычисления расстояния между двумя точками, заданными в декартовой системе координат; в) получения полярных координат точки, если заданы ее декартовы координаты; г) вычисления расстояния между...
C++ Синтаксический анализатор. Сдвиг-свёртка без возвратов http://www.cyberforum.ru/cpp-beginners/thread696784.html
Доброго времени суток. Мне необходимо реализовать синтаксический анализатор, методом "сдвиг-свёртка без возвратов". Но я даже не знаю с чего начать и как реализовывать алгоритм. Если у кого-нибудь есть идеи по поводу этого, напишите плиз. Заранее спасибо.
C++ Готовая игра "угадай число" #include <iostream.h> int main () { int x=rnd%256; int d; int masks={0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01}; int *mask; do { подробнее

Показать сообщение отдельно
SuLLeN
23 / 23 / 4
Регистрация: 27.12.2011
Сообщений: 791
14.11.2012, 18:15  [ТС]     Добавление строки в стек
Вот весь код

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
#include <iostream>
#include <string>
 
using namespace std;
 
template<typename T>
class MyStack
{
  public:
    MyStack();
    void push(T);
    void pop();
    T top();
    int mySize() const;
  private:
    int size; 
    T* stack;                    
};
 
template<typename T>
MyStack<T>::MyStack()
  :size(0)
{       
}                                           
 
template<typename T>
void MyStack<T>::push( T elem )
{ 
  if(size == 0)
  {     
    stack = new T[size];
    stack[size++] = elem;
  }
  else
  { 
   T tempMass[size];  
   
   for( int i = 0; i < size; ++i)
   {
     tempMass[i] = stack[i];  
   }     
     
   delete [] stack;
   stack = new T[++size];
   
   for( int i = 0; i < size; ++i)
   {
     stack[i] = tempMass[i];  
   } 
   
   stack[size-1] = elem;
  }                      
}
 
template<typename T>
void MyStack<T>::pop()
{
  if( size > 0 )
  { 
    --size;    
    T tempMass[size];  
    for( int i = 0; i < size; ++i )
    {
      tempMass[i] = stack[i];
    }
    delete [] stack;
    stack = new T[size];
    
    for( int i = 0; i < size; ++i )
      stack[i] = tempMass[i];
  }
  else 
  cout << "Stek pust." << endl;       
}   
 
template<typename T>
T MyStack<T>::top()
{
  if( size > 0 )                 
  return stack[size-1];    
  else if( size == 0 )
  cout << "Stek pust." << endl;
}                               
 
template<typename T>
int MyStack<T>::mySize() const
{
  return size;  
}
 
struct sport
{
 string fio;
 string vid;
 string fak;
 string spc;
 int lvl;
};
 
void word(sport * obj, int n)
{
     for (int i=0; i < n; i++)
     {
        std::cout << std::endl;
        std::cout << "Ââåäèòå Г¤Г*Г*Г*ûå Г”.Г€.ГЋ.: ";
        getline(std::cin, obj[i].fio);
        std::cout << "Ââåäèòå Г¤Г*Г*Г*ûå Г® ñïîðòå: ";
        getline(std::cin, obj[i].vid);
        std::cout << "Ââåäèòå Г¤Г*Г*Г*ûå Г® ГґГ*êóëüòåòå: ";
        getline(std::cin, obj[i].fak);
        std::cout << "Ââåäèòå Г¤Г*Г*Г*ûå Г® ñïåöèГ*ëüГ*îñòè: ";
        getline(std::cin, obj[i].spc);
        std::cout << "Ââåäèòå Г¤Г*Г*Г*ûå Г® âîçðГ*Г±ГІГҐ: ";
        std::cin >> obj[i].lvl;
        std::cout << std::endl;
     } 
}
  
int main ()
{
    system("chcp 1251");
    setlocale(0, "rus");
    
    int i,n = 1;
    sport *p_sport = new sport[n];
    word(p_sport,n);
    
    MyStack.push(p_sport);
    
    MyStack.pop(&p_sport);
    
    delete p_sport;
 
    system("pause");
    return 0;   
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru