Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
аИСТ
0 / 0 / 1
Регистрация: 18.05.2014
Сообщений: 4
#1

Структуры: "Справочная служба железнодорожного вокзала"

03.06.2015, 09:41. Просмотров 307. Ответов 0
Метки нет (Все метки)

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

получилось реализовать всё,кроме поиска по промежуточным станциям(251 invalid conversion from `char' to `const char*' ). Кто подскажет как праильно реализовать? Буду очень благодарен.
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
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
#include <iostream>                   
#include <stdio.h>                      
#include <string.h>
#include <windows.h>
#include <string.h>
using namespace std;
 
int num;
struct ZD  
{char name[30];    //Станция назначения
 char *prom;    //Промежуточная станция
 int num;         //kolpromej stancii
 char naz[30];         //Название остановки
 int vrh;              //время отправления часы
 int vrm;              // время отправ. мин.
 int nom;            //номер поезда
 int bil;                     //билеты
};
 
 
struct ZD mas[30]; 
struct ZD tmp; 
int sch=0;        
int er;            
 
void enter_new();
int menu();
void out();
void del();
void za1();
void za2();
 
int main()
{
    setlocale(LC_ALL,"Russian");
   while(1)
    {   
        switch(menu())
        {  
                        case 1:del();break;
                        case 2:enter_new();break;
                        case 3:out();break;
                       case 4: za1();break;
                        case 5: za2();break;
                        case 6: return 0;
                        default: cout<<"Не верный выбор\n";
        }
     }
}
 
void enter_new()                        
{ 
    if(sch<30) 
    {
        cout<<"Запись номер: "<<sch+1; 
        cout<<"\nВведите Название остановки\n";
        cin>>mas[sch].name; 
        
        cout << "Введите количество промежуточных станций: ";
        cin >> mas[sch].num;
      
      
     mas[sch].prom = new char[mas[sch].num];      
        for (int i = 0; i < mas[sch].num; i++) 
        { 
           
           cin>>mas[sch].prom[i];
      
        }      
       cout<<"Введите Станцию назначения \n";
        cin>>mas[sch].naz;
       
       
        cout<<"Введите время отправления(часы в формате 0-23) \n";
        cin>>mas[sch].vrh;
        if(mas[sch].vrh>23 || mas[sch].vrh<0) 
        while(mas[sch].vrh>23 || mas[sch].vrh<0)
        
                              {
                              cout<<"Некорректное время. Введите часы в формате 0-23. Повторите ввод.\n";
                              cin>>mas[sch].vrh;
                              }
       
       
        cout<<"Введите время отправления(минуты в формате 0-59) \n";
        cin>>mas[sch].vrm;
        if(mas[sch].vrm>59 || mas[sch].vrm<0)
        while(mas[sch].vrm>59 || mas[sch].vrm<0)
        
                              {
                              cout<<"Некорректное время. Введите минуты в формате 0-59. Повторите ввод. \n";
                              cin>>mas[sch].vrm;
                              }
        
        
        cout<<"Введите номер поезда\n";
        cin>>mas[sch].nom;
        
        
        
        
        
        cout<<"Введите 1(если билеты есть), 2(если билетов нет).\n";
        cin>>mas[sch].bil;
        if(mas[sch].bil>2 || mas[sch].bil<1) 
        while(mas[sch].bil>2 || mas[sch].bil<1)
                              
                              {
                              cout<<"Некорректный ввод. Введите 1(если билеты есть), 2(если билетов нет).\n";
                              cin>>mas[sch].bil;
                            
                              }
        sch++; 
    }
    else cout<<"Введено максимальное количество записей";
}
 
 
int menu()
{
    int er;
    cout<<"Введите:\n";
    cout<<"1-Для удаления записи\n";
    cout<<"2-Для ввода новой записи\n";
    cout<<"3-Для вывода записей\n";
    cout<<"4-Для вывода информации об отправлении поездов в указанный пункт назначения\n";
    cout<<"5-Наличие билетов на поезд с указанным номером.\n";
    cout<<"6-Выход.\n";
    cin>>er;
    return er;
}
 
void out()    
{
   int sw;   
   int k;    
   if (sch==0) 
      cout<<"\nНет записей: \n";
   else
   {
   cout<<"\nВведите: \n";
   cout<<"1-если хотите вывести какую-либо запись\n";
   cout<<"2-если хотите вывести все записи\n";
   cin>>sw;
   if(sw==1)
   {
       cout<<"введите номер записи которую нужно вывести\n";
       cin>>k;
       
       cout<<"Название остановки:"<<mas[k-1].name<<endl;
       
       for (int i = 0; i < num; i++) 
        {   
       cout << "Промежуточная станция " << mas[k-1].prom[i] << endl;
        }
       
       
       
       cout<<"Станция назначения:"<<mas[k-1].naz<<endl;
       cout<<"Время отправления:"<<mas[k-1].vrh<<":"<<mas[k-1].vrm<<endl;
       cout<<"Номер поезда:"<<mas[k-1].nom<<endl;
       if (mas[k-1].bil == 1)
       cout<<"Билеты есть"<<endl;
       else cout<<"Билетов нет"<<endl;
       cout<<"____________"<<endl;
 
   }
   if(sw==2)
   {  for(int i=0;i<sch;i++) 
      {
        cout<<"Название остановки:"<<mas[i].name<<endl;
        
        
      
       for (int j = 0; j < mas[i].num; j++) 
        {      
                cout << "Промежуточная станция:  "<< mas[i].prom[j] << endl;
        }
        
     
        
        cout<<"Станция назначения:"<<mas[i].naz<<endl;
        cout<<"Время отправления:"<<mas[i].vrh<<":"<<mas[i].vrm<<endl;
        cout<<"Номер поезда:"<<mas[i].nom<<endl;
        if (mas[i].bil == 1)
       cout<<"Билеты есть"<<endl;
       else cout<<"Билетов нет"<<endl;
        cout<<"____________"<<endl;
      }
   }
   }
}
 
void del()        
{   int d;        
    cout<<"\nВведите номер записи, которую необходимо удалить\n";
    cout<<"Если необходимо удалить все записи,нажмите '33'\n";
    cin>>d;
    if (d!=99)
    { for (int i=(d-1);i<sch;i++) 
          mas[i]=mas[i+1];
      sch=sch-1; 
    }
    if (d==33)
    {    for(int i=0;i<30;i++)
           mas[i]=tmp; 
        sch=0;
            }
}
 
void za1()
{
     char *za,*zaa;
    // f = new char [255];
     za = new char [255]; zaa = new char [255];
    // char za[30];
     cout<<"Введите пункт назначения: \n";
     cin>>za;
    //strcpy(zaa,za);
     for(int i=0;i<sch;i++) 
    
     
     if (strcmp(mas[i].naz, za) == 0) //|| strcmp(mas[i].prom[j], za) == 0)
     {
     cout<<"Название остановки:"<<mas[i].name<<endl;
     for(int j=0;j<mas[i].num;j++)
     cout<<"\nПромежуточная станция\n"<<mas[i].prom[j]<<endl;
     cout<<"Станция назначения:"<<mas[i].naz<<endl;
     cout<<"Время отправления:"<<mas[i].vrh<<":"<<mas[i].vrm<<endl;
     cout<<"Номер поезда:"<<mas[i].nom<<endl;
     if (mas[i].bil == 1)
     cout<<"Билеты есть"<<endl;
     else cout<<"Билетов нет"<<endl;
     cout<<"____________"<<endl;
                             }
     //else continue; 
     else 
     for(int i=0;i<sch;i++) 
     for(int j=0;j<mas[i].num;j++)
     { 
     strcpy(zaa,mas[i].prom[j]);
   if (strcmp(zaa, za) == 0)
   {
     cout<<"Название остановки:"<<mas[i].name<<endl;
     for(int j=0;j<mas[i].num;j++)
     cout<<"\nПромежуточная станция\n"<<mas[i].prom[j]<<endl;
     cout<<"Станция назначения:"<<mas[i].naz<<endl;
     cout<<"Время отправления:"<<mas[i].vrh<<":"<<mas[i].vrm<<endl;
     cout<<"Номер поезда:"<<mas[i].nom<<endl;
     if (mas[i].bil == 1)
     cout<<"Билеты есть"<<endl;
     else cout<<"Билетов нет"<<endl;
     cout<<"____________"<<endl;
                             }
                             else continue;
                             }
}
 
void za2()
{
     int n;
     cout<<"Введите номер поезда: \n";
     cin>>n;
     for (int i=0;i<sch;i++)
     {
     if (mas[i].nom == n)
      if (mas[i].bil == 1)
     cout<<"На поезд в "<<mas[i].name<<"Билеты есть"<<endl;
     else cout<<"На поезд в "<<mas[i].name<<"Билетов нет"<<endl;
     }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2015, 09:41
Ответы с готовыми решениями:

Реализовать автоматизированную информационную систему железнодорожного вокзала (динамические структуры данных)
Задание работы: Автоматизированная информационная система на железнодорожном вокзале содержит...

Чтения структуры из файла (описать структуру с именем "ORDER": "счет плательщика"; "счет получателя"; "сумма, переводится банковской операцией")
Описать структуру с именем &quot;ORDER&quot;, содержащий следующие поля: &quot;Счет плательщика&quot;; &quot;Счет...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;,...

информационно - справочная система "Телефонный справочник".
написать программу, предоставляющую информацию о номерах частных лиц и организации. Данные об...

Реализовать поиск по заданному полю в массиве объектов пользовательского типа ("Справочная автовокзала")
В справочной автовокзала хранится расписание движения автобусов. Для каждого рейса указаны его ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2015, 09:41

Создание структуры "префиксное дерево". Ошибка "Access violation writing location".
Есть структура данных - бор или префиксное дерево. class trie { char value; // символ узла...

Заполнить структуры "Прямоугольник" и "Треугольник" и найти площади и периметры фигур
Доброго времени суток! Начали изучать структуры, сижу над задачкой, да вот не идет она у меня....

Структуры "Студент" и "Дата": с чем связана данная ошибка?
С чем связана данная ошибка?...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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