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

Задача с динамической структурой данных списка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Касательно конструктора копирования http://www.cyberforum.ru/cpp-beginners/thread609412.html
Вопрос следующий. У меня есть класс "Точки" есть класс "группы" и есть класс "возможные группы". 3 класса. в классе "группы" есть массив который хранит в себе ОБЪЕКТЫ точек. так же хотелось бы чтобы класс "возм. гр" хранил в себе объекты "группы" но реализовать не получается. Видимо проблема в конструкторе копирования. Вот классы: class TTo4ka { public:
C++ Почему нехорошо себя ведёт конструктор класса (не компилится ничё), если ему параметром ссылку на константу? То есть вообще непонятно ничё, вот, смотрите, этот пример не компилится: #include <stdio.h> class fee { public: //Не компилится fee (int& A_); fee (int& A_) { } }; http://www.cyberforum.ru/cpp-beginners/thread609409.html
Забить char-строку 16-ричными числами из генератора случайных чисел C++
чет не могу понять как? есть буфер char packetbuff; его нужно забить из генератора случайных чисел. 10ричными не вопрос char packetbuff; int i=0, m=10; srand ((unsigned)time(NULL)); for(i=0;i<24;i++) {
C++ Сравнение двух слов
Как сравнить два слова? использую strcmp но результата не дает
C++ Программа пропускает вызов cin.getline() во время выполнения http://www.cyberforum.ru/cpp-beginners/thread609339.html
помогите исправить прогу, не работает cin.getline, просто пропускает ее(( void main() { setlocale(LC_ALL,"russian"); char *str=new char(255); int n; char *token; string*a; string b;
C++ столбчатая диаграмма всем доброго времени суток! Не подскажете, с помощью какой функции можно построить столбчатую диаграмму? или может у кого есть пример кода? пишу на dev c++ подробнее

Показать сообщение отдельно
nnina
 Аватар для nnina
2 / 2 / 0
Регистрация: 12.11.2011
Сообщений: 69
19.06.2012, 17:18     Задача с динамической структурой данных списка
Написать консольную программу на языке С++, в которой должно быть предусмотрено:
cоздание односвязного списка;
просмотр односвязного списка;
oбработка списка в соответствии с вариантом задания;

1. Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке. Сведения о каждом автобусе содержат: номер автобуса; фамилию и инициалы водителя; номер маршрута. Программа должна обеспечивать:
- начальное формирование данных о всех автобусах в парке в виде списка;
- при выезде каждого автобуса из парка вводится номер автобуса, и программа удаляет данные об этом - автобусе из списка автобусов, находящихся в парке, и записывает эти данные в список автобусов, находящихся на маршруте;
- при въезде каждого автобуса в парк вводится номер автобуса, и программа удаляет данные об этом автобусе из списка автобусов, находящихся на маршруте, и записывает эти данные в список автобусов, находящихся в парке;
- по запросу выдаются сведения об автобусах, находящихся в парке, или об автобусах, находящихся на маршруте.

Помогите, пожалуйста, найти ошибки.

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
#include <string.h>
#include <dos.h>
#include <iostream>
#include <iomanip>
#include <stdlib.h>
#include <conio.h>
struct bus
{
    char FIO_voditel[ 50 ];
    int bus_number, route_number, viezd, zaezd;
    struct bus *even;
    };
struct bus *next;
struct bus *start=NULL;
struct bus *end=NULL;
int size=0;
void index( int index )
{
next=start;
for( int i=0; next; ++i )
{
    if( i==index ) break;
    next=next->even;
    }
return;
}
void addtail( bus &X ) //ГґГіГ*êöèÿ äîáГ*âëåГ*ГЁГї Гў ñïèñîê îäГ*îé ñòðóêòóðû
{
++size;
next=( bus * ) malloc ( sizeof(bus) );
memcpy( next, &X, sizeof(bus) );
if( start==NULL && end==NULL )  start=next;
else end->even=next;
end=next;
end->even=NULL;
return;
}
int filled()
{
int randomize();
char opt[ 10 ];
struct bus X;
int clrscr();
int setw ();
cout << setw( 10 ) << "ГЌГ*áåðèòå EXIT äëÿ ïðåêðГ*Г№ГҐГ*ГЁГї ââîäГ* Г¤Г*Г*Г*ûõ" << endl;
cout << "Ââåäèòå Г¤Г*Г*Г*ûå --" << setw( 10 ) << size+1 << endl
     << "ÔÈÎ âîäèòåëÿ: ";
cin.get( X.FIO_voditel , 100 );
if( strlen(X.FIO_voditel)==0 || stricmp(X.FIO_voditel, "exit")==0 ) return;
    
cout << "Íîìåð Г*âòîáóñГ* ГЁ Г*îìåð ðåéñГ* ÷åðåç ïðîáåë: ";
cin >> X.bus_number >> X.route_number;
cin.ignore();
for( ;((X.viezd=random( 24 ))>=(X.zaezd=random( 24 ))); );
addtail( X );
memset( &X, 0, sizeof(bus) );
filled(); // ðåêóðñèÿ
}
int main( void )
{
int i, j, c;
struct time t;
gettime( &t );
filled(); //Г§Г*ïîëГ*ГїГҐГ¬ ñïèñîê
for( ; c!=3; )
{
    clrscr();
    cout << "[ 1 ] Г‚ ГЇГ*ðêå" << endl
         << "[ 2 ] ГЌГ* ëèГ*ГЁГЁ" << endl
         << "[ 3 ] Âûõîä" << endl
         << "Ââåäèòå 1,2,3 : ";
    cin >> c; 
    switch( c )
    {
        case 1:
            cout << "Г‚ ГЇГ*ðêå Г*Г* Г¤Г*Г*Г*ûé ìîìåГ*ГІ: " << endl;
            for( j=0,i=0; i<size; ++i )
            {
                index( i );
                if( next->viezd>t.ti_hour || next->zaezd<t.ti_hour )
                {
                    cout << "Íîìåð Г*âòîáóñГ*: " << next->bus_number << endl
                         << "Íîìåð ðåéñГ*: " << next->route_number << endl
                         << "Âîäèòåëü: " << next->FIO_voditel << endl
                         << "------------------------------------" << endl;
                    ++j;
                    }
                }
            cout << "Èòîãî: " << j << " ?? " << size << endl
                 << "ГЌГ*æìèòå ëþáóþ ГЄГ«Г*ГўГЁГёГі äëÿ ïðîäîëæåГ*ГЁГї " << endl;
            getch();
        break; 
        case 2:
            cout << "ГЌГ* ëèГ*ГЁГЁ Гў Г¤Г*Г*Г*ûé ìîìåГ*ГІ: " << endl;
            for( j=0,i=0; i<size; ++i )
            {
                index( i );
                if( next->viezd<t.ti_hour && next->zaezd>t.ti_hour )
                {
                    cout << "Íîìåð Г*âòîáóñГ*: " << next->bus_number << endl
                         << "Íîìåð ðåéñГ*: " << next->route_number << endl
                         << "Âîäèòåëü: " << next->FIO_voditel << endl
                         << "------------------------------------" << endl;
                    ++j;
                    }
                }
            cout << "Èòîãî: " << j << " ГЁГ§ " << size << endl
                 << "ГЌГ*æìèòå ëþáóþ ГЄГ«Г*ГўГЁГёГі äëÿ ïðîäîëæåГ*ГЁГї " << endl;
            getch();
        break;
        default:
            if( c>3 ) cout << "ГЌГҐГўГҐГ°Г*ûé ââîä!" << endl;
        break;
        }
    }
 
return;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru