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

Список типа "ОЧЕРЕДЬ" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ иерархия геометрических фигур в ООП http://www.cyberforum.ru/cpp-beginners/thread51922.html
Здравствуйте уважаемые формучани, нужна ваша помощь ибо я уже не знаю что делать. В общем задание построить иерархию геометрических фигур методом наследования( с этим проблем не возникло), и каждая...
C++ Умножение матрицы на вектор #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <math.h> typedef matrix; typedef vector; matrix a={{3,5,1}, {4,8,6}, {2,7,9}}; vector x={9,5,7}; http://www.cyberforum.ru/cpp-beginners/thread51921.html
C++ Вычислить сумму по формуле
Нужно с программировать программу в С++, по теме рекурсии... Задача такова: Дано натуральное n (в радианах) нужно сделать так чтобы она находила сумму по формуле: ...
Обсуждение своих программ C++
Ув.Программисты, решил открыть темку,где можно продемонстрировать свою прогу,обсуждать ее коды:):)Буду рад ваших ответов:):) Добавлено через 3 минуты Это моя программа, которую сегодня...
C++ system("cls"); как по другому? http://www.cyberforum.ru/cpp-beginners/thread51900.html
имеется код #include "stdio.h" #include "stdlib.h" #include "conio.h" #include "windows.h" #include <iostream> using namespace std;
C++ Задача:Удалить строчки в КиР наткнулся на задачу: напишите программу удаления из "С"-пораммы всех комментариев. Не забывайте аккуратно обращаться с "закавыченнными" строками константами как понял - надо редактировать срр... подробнее

Показать сообщение отдельно
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
22.09.2009, 15:10
Пример дэка
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
struct Dec
{
 int el;
 Dec *next;
};
 
struct BE
{
 Dec *beg;
 Dec *end;
};
 
 
void AddR(BE *pbe,int ii)
{
 void in(BE*,int);
 void erin();
 if (initbool)
 {
  if (pbe->beg == NULL)
  {
   in(pbe,ii);
  }
  else
  {
   pbe->end->next = new Dec;
   pbe->end = pbe->end->next;
   pbe->end->el = ii;
   pbe->end->next = NULL;
  }
  del = 1;
  printf("Addition on the right................................. [OK]");
 }
 else erin();
};
 
void AddL(BE *pbe, int ii)
{
 void in(BE*,int);
 void erin();
 if (initbool)
 {
  if (pbe->beg == NULL)
  {
   in(pbe,ii);
  }
  else
  {
   Dec *p = new Dec;
   p->next = pbe->beg;
   pbe->beg = p;
   pbe->beg->el = ii;
  }
  del = 1;
  printf("Addition on the left.................................. [OK]");
 }
 else erin();
};
 
void in(BE *pbe, int ii)
{
 pbe->beg = new Dec;
 pbe->end = pbe->beg;
 pbe->beg->next = NULL;
 pbe->beg->el = ii;
};
 
 
int *DelR(BE *pbe)
{
 void erdel();
 void erin();
 int n;
 Dec *p;
 if (initbool)
  if (del)
  {
   if (pbe->beg == pbe->end)
   {
    p = pbe->beg;
    pbe->beg = NULL;
    pbe->end = NULL;
    del = 0;
   }
   else
   {
    p = pbe->beg;
    while (p->next!=pbe->end)
    {
     p = p->next;
    }
    pbe->end = p;
    pbe->end->next = NULL;
    p = p->next;
   }
   n=p->el;
   delete p;
   printf("Delete on the left.................................... [OK]");
   return &n;
  }
  else {erdel(); return NULL;}
  else {erin(); return NULL;}
};
 
int *DelL(BE *pbe)
{
 void erin();
 void erdel();
 Dec *p;
 int n;
 if (initbool)
 if (del)
 {
  if (pbe->beg == pbe->end)
  {
   p = pbe->beg;
   pbe->beg = NULL;
   pbe->end = NULL;
   del = 0;
  }
  else
  {
   p = pbe->beg;
   pbe->beg = pbe->beg->next;
  }
  n=p->el;
  delete p;
  printf("Delete on the right................................... [OK]");
  return &n;
 }
 else {erdel(); return NULL;}
 else {erin(); return NULL;}
};
 
void DelAll(BE *pbe)
{
 Dec *p;
 
 while(pbe->beg!=pbe->end)
 {
  p = pbe->beg;
  while(p->next!=pbe->end)
  {
   p = p->next;
  }
  pbe->end = p;
  delete p;
 }
 del = 0;
 printf("Delete All............................................ [OK]\n");
};

писал давно, используя структуры, но думаю суть поймешь.
Дэк - это список, добавлять, и удалять можно с любой стороны.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru