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

Создать список, содержащий сведения об отправлении поездов - C++

Восстановить пароль Регистрация
 
Frankie
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 6
10.06.2013, 09:29     Создать список, содержащий сведения об отправлении поездов #1
привет, не могу решить задачу:

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

прошу помочь, заранее спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2013, 09:29     Создать список, содержащий сведения об отправлении поездов
Посмотрите здесь:

Создать файл содержащий сведения C++
C++ Создать файл содержащий сведения о результатах охоты
Создать класс, содержащий сведения о сотрудниках института C++
Создать файл, содержащий сведения о товарах в магазине C++
Создать массив структур, содержащий сведения о телепередаче C++
C++ Создать класс, содержащий сведения об отправлении поездов дальнего следования с Казанского вокзала
C++ Создать файл, содержащий сведения о сдаче студентами сессии
C++ Создать файл, содержащий сведения о количестве изделий

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MarVaL
С++ Beginner
 Аватар для MarVaL
116 / 116 / 16
Регистрация: 28.02.2013
Сообщений: 246
10.06.2013, 11:16     Создать список, содержащий сведения об отправлении поездов #2
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
#include <iostream>
#include <iomanip>
#include <string>
 
struct Train {
  int number;
  std::string destination;
  std::string departure;
  std::string time;
  int ticket_count;
  Train *next;
 
  Train() : next(0) { }
  
  Train(const Train &tr) {
    number = tr.number;
    destination = tr.destination;
    departure = tr.departure;
    time = tr.time;
    ticket_count = tr.ticket_count;
  }
 
  ~Train() { }
};
 
class List {
public:
  List() : Head(0), Tail(0) { }
  ~List();
  void addTrain(const Train &);
  void showList() const;
  void find(int) const;
private:
  Train *Head;
  Train *Tail;
};
 
 
List::~List() {
  Train *del = Head;
  while(del) {
    Train *temp = del->next;
    delete del;
    del = temp;
  }
}
 
void List::addTrain(const Train& tr) {
  Train *new_tr = new Train();
 
  new_tr->number = tr.number;
  new_tr->departure = tr.departure;
  new_tr->destination = tr.destination;
  new_tr->ticket_count = tr.ticket_count;
  new_tr->time = tr.time;
  
  if(!Head) {
    Head = Tail = new_tr;
  } else {
    Tail->next = new_tr;
    new_tr->next = 0;
    Tail = new_tr;
  }
}
 
void List::showList() const {
  Train *temp = Head;
  int counter = 1;
  std::cout << std::setw(12) << "Номер поезда" << std::setw(11) << "Назначение" << std::setw(12) << "Отправление"
    << std::setw(13) << "Время в пути" << std::setw(11) << "Билеты шт." << std::endl;
  while(temp) {
    std::cout << std::setw(12) << temp->number << std::setw(11) << temp->destination << std::setw(12) << temp->departure
      << std::setw(13) << temp->time << std::setw(11) << temp->ticket_count << std::endl;
    temp = temp->next;
    counter++;
  }
}
 
void List::find(int num) const {
  Train *temp = Head;
  while(temp) {
    if(num == temp->number) {
      std::cout << "Количество билетов на поезд с номером " << num << " " << temp->ticket_count << " штук." << std::endl;
      break; 
    }
    temp = temp->next;
  }
}
 
int main() {
  setlocale(0, "");
 
  List *list = new List;
 
  int count;
  std::cout << "Введите количество поездов: ";
  std::cin >> count;
 
  std::cout << "Заполните список сведениями о поездах" << std::endl;
  for(int i = 1; i <= count; ++i) {
    Train train;
    std::cout << "Введите номер поезда: ";
    std::cin >> train.number;
    std::cin.get();
 
    std::cout << "Путь назначения: ";
    std::getline(std::cin, train.destination);
    
    std::cout << "Время отбытия: ";
    std::getline(std::cin, train.departure);
    
    std::cout << "Время в пути: ";
    std::getline(std::cin, train.time);
 
    std::cout << "Количество билетов: ";
    std::cin >> train.ticket_count;
 
    list->addTrain(train);
  }
 
  std::cout << std::endl;
  
  list->showList();
 
  std::cout << std::endl;
 
  std::cout << "Введите номер искомого поезда: ";
  int number;
  std::cin >> number;
 
  list->find(number);
 
  delete list;
 
  std::cin.get();
  std::cin.get();
  return 0;
}
Yandex
Объявления
10.06.2013, 11:16     Создать список, содержащий сведения об отправлении поездов
Ответ Создать тему
Опции темы

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