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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Слоечка
0 / 0 / 0
Регистрация: 22.12.2011
Сообщений: 22
#1

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

08.04.2012, 15:53. Просмотров 259. Ответов 0
Метки нет (Все метки)

Задача состоит в следующем:
Сформировать две очереди по 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     С++, Как Сделать Такую Программу Не В Классах?
Посмотрите здесь:

Как сделать такую же программу, но с циклом for? - C++
#pragma hdstop #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #define eof 26 int main() { int far; while(far!=eof) ...

Подскажите как сделать такую задачку - C++
В файле дана последовательность целых чисел. Для каждого элемента последовательности вычислить количество элементов слева, которые по...

Как написать такую программу - C++
Как,а вернее в какой среде, можно без особых усилий(не работая с WinAPI) написать такую элементарную программу.Программы написана в...

Как осуществить такую программу где ввод и вывод будет на одной строке? - C++
Допустим у меня есть такой код int main() { int a,b; scanf(&quot;%i&quot;,&amp;a); printf(&quot;+&quot;); scanf(&quot;%i&quot;, &amp;b); printf(&quot;=%i&quot;, a + b);...

Что такое "эхо печать"? И как через такую печать сделать калькулятор? - C++
Само задание такое: Создать программу-калькулятор, обеспечивающую ввод с клавиатуры в режиме эхо-печати только цифр, а также...

Можете подсказать можно ли создать такую программу на C++ - C++
Вот видео этой программы https://www.youtube.com/watch?v=zUsOH1Oj450

Структуры данных. Написать программу, позволяющую определить, есть ли в школе в каких-либо классах однофамильцы - C++
Написать программу, позволяющую определить, есть ли в школе в каких-либо классах однофамильцы. Данные об ученике идут в следующем порядке:...

Как описывать методы в классах? - C++
Отдельно как функцию, или обязательно внутри объявления класса??

Как работать с массивами в пользовательских классах? - C++
есть программа для записи в класс Auto, но она ругается если я хочу записать в массив следующим методом: #include &lt;iostream&gt; using...

Как перехватывать и обрабатывать события в динамически созданных классах? - C++
Приветствую! Есть много разных классов и много динамически созданных экземпляров каждого из них. И вот в программе происходит какое-то...


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

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

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