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

С++, Как Сделать Такую Программу Не В Классах? - C++

Войти
Регистрация
Восстановить пароль
 
Слоечка
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 22
08.04.2012, 15:53     С++, Как Сделать Такую Программу Не В Классах? #1
Задача состоит в следующем:
Сформировать две очереди по n элементов, объединить очереди в одну, в которой элементы начальных очередей меняются, начиная с первого элемента первой очереди. Вывести на экран начальные и конечную очереди.

Есть код программы, написанный в классах:
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
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
//20.   Сформувати дві черги по  n  елементів, зчитавши дані з текстового файлу. 
//Об'єднати черги в одну, в якій елементи початкових черг чергуються, 
//починаючи з першого елементу першої черги. 
//Вивести на екран початкові та вихідну черги.
 
#include <iostream>
using namespace std;
#include <math.h>
const int n=30;
int a[n];
struct node //
{
int value;
node * next;
};
class spisok
{
node * n0,* k0;
int klad;
public:
spisok()
{
k0=n0=NULL;
}
int set_udal()
{
return klad;
}
void postroenie();
void postroenie1();
void vuvod();
void add(int);
void del();
void ochistka();
};int i=2;
//---------------------------------------------------------------------------
int main()
{
spisok a;spisok b;spisok c;
int el;
a.postroenie();b.postroenie();c.postroenie1();
a.vuvod();b.vuvod();c.vuvod();
cout<<"vvedit lanky scho dod:"<<endl;
cin>>el;
a.add(el);
a.vuvod();
cout<<"udal z chergi:"<<endl;
a.del();
a.vuvod();
cout<<"udal el"<<a.set_udal()<<endl;
a.ochistka();b.ochistka();c.ochistka();
system("Pause");
        return 0;
}
//---------------------------------------------------------------------------
  void spisok::postroenie()
  {
  node * r;
  int el;
  cout<<"vvedit element chergi:"<<endl;
  cin>>el;a[i-2]=el;
  if(el!=0)
  {
  r=new node;
  r->value=el;
  r->next=NULL;
  n0=k0=r;
  cin>>el;a[i-1]=el;
  while(el!=0)
  {
  r=new node;
  r->value=el;
  r->next=NULL;
  k0->next=r;
  k0=r;
  cin>>el;a[i]=el;i++;
  }
  }
  else
  {
  n0=k0=r=NULL;
  }
  }
  //-------------------------------------------------------------------------
   void spisok::postroenie1()
  {
  node * r;int k=2;
  int el;
  el=a[0];
  if(el!=0)
  {
  r=new node;
  r->value=el;
  r->next=NULL;
  n0=k0=r;
  el=a[1];
  while(el!=0)
  {
  r=new node;
  r->value=el;
  r->next=NULL;
  k0->next=r;
  k0=r;
  el=a[k];k++;
  }
  }
  else
  {
  n0=k0=r=NULL;
  }
  }
   //--------------------------------------------------------------------------
 
  //--------------------------------------------------------------------------
  void spisok::vuvod()
  {
  node * r;
  cout<<"cherga:"<<endl;
  r=n0;
  while(r!=NULL)
  {
  cout<<r->value<<' ';
  r=r->next;
  }
  }
  //---------------------------------------------------------------------------
  void spisok::add(int el)
  {
node * r;
r=new node;
r->value=el;
r->next=NULL;
if(n0!=NULL)
{
k0->next=r;
k0=r;
}
else
n0=k0=r;
}
//-----------------------------------------------------------------------------
void spisok::del()
{
node * q;
if(n0==NULL)
cout<<"cherga pusta"<<endl;
else
{
klad=n0->value;
q=n0;
n0=n0->next;
delete q;
}
}
//-----------------------------------------------------------------------------
void spisok::ochistka()
{
node * q;
q=n0;
if(n0==NULL)
{
while(n0!=k0)
{
n0=q->next;
delete q;
q=n0;
}
delete n0;
n0=k0=NULL;
}
}
как его переписать, чтобы был "не в классах"?

заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2012, 15:53     С++, Как Сделать Такую Программу Не В Классах?
Посмотрите здесь:

C++ Как сделать программу незакрываемой ?
C++ Как описывать методы в классах?
C++ Как написать такую программу
C++ Подскажите как сделать такую задачку
Как перехватывать и обрабатывать события в динамически созданных классах? C++
Как использовать один и тот же объект в разных классах? C++
Структуры данных. Написать программу, позволяющую определить, есть ли в школе в каких-либо классах однофамильцы C++
Можете подсказать можно ли создать такую программу на C++ C++
Как сделать программу быстрее? C++
C++ Как сделать такую же программу, но с циклом for?
Как осуществить такую программу где ввод и вывод будет на одной строке? C++
C++ Как работать с массивами в пользовательских классах?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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