Содержание
- 2. Задание Составить программу, формирующую сведения об отправлении поездов. Каждый поезд описывается с помощью структуры, содержащей следующие
- 3. Задание Программа должна реализовывать следующие операции: – формирование меню для выбора действия пользователем; – ввод данных
- 4. Текст программы #include "stdafx.h" #include "stdio.h" #include "locale.h" #include "conio.h" #include using namespace std; //Структура для
- 5. Train *pbeg; //Указатель на начало списка Train *pend; //Указатель на конец списка //Список функций программы void
- 6. //Функция поиска элемента по времени отправления bool find_time(Train* const pbeg, char* v_otpr); //Функция удаления элемента из
- 7. //Главная функция программы int _tmain(int argc, _TCHAR* argv[]) { setlocale(LC_ALL,""); pbeg = 0; //Инициализация указателя на
- 8. //Цикл обработки действий пользователя while (num!=5) { menu(); cin>>num; switch(num){ case 1: vvod(); break; case 2:
- 9. //Функция прорисовки меню void menu() { cout cout cout cout cout cout cout }
- 10. //Функция формирования первого элемента списка Train* first(int t_num, char* p_nazn, char* v_otpr) { //Создание нового элемента
- 11. void add_sort(Train **pbeg, Train **pend, int t_num, char* p_nazn, char* v_otpr) { //Создание нового элемента Train
- 12. while (pt){ //Просмотр списка if (t_num train_num) { pv->next = pt; if (pt == *pbeg) //Вставка
- 13. pt->prev = pv; return; } pt = pt->next; } pv->next = 0; //Вставка в конец списка
- 14. //Функция поиска элемента по номеру поезда Train* find(Train *const pbeg, int t_num) { Train *pv =
- 15. //Функция поиска элемента по имени пункта назначения bool find_punkt(Train* const pbeg, char* p_nazn) { bool find=false;
- 16. //Функция поиска элемента по времени отправления bool find_time(Train* const pbeg, char* v_otpr) { bool find=false; Train
- 17. //Функция удаления элемента из списка bool remove(Train **pbeg, Train **pend, int key) { if (Train *pkey
- 18. else //Если удаляется последний элемент из списка if (pkey == *pend) { *pend = (*pend)->prev; (*pend)->next
- 19. //Функция ввода данных void vvod() { int n; int t_num; char p_nazn[20]; char v_otpr[10]; //Ввод количества
- 20. //Цикл для ввода полей структуры for (int i=0; i { cout cin>>t_num; cout fflush(stdin); gets(p_nazn); cout
- 21. //Если в списке есть элементы - добавляется новый // элемент с сортировкой списка if (pbeg) add_sort(&pbeg,
- 22. //Функция вывода списка на экран в виде таблицы void vivod() { if (pbeg) //Если список не
- 23. //Вывод элементов списка на экран Train *pv = pbeg; while (pv) { printf("| %5d | %20s
- 24. //Функция поиска элементов в списке void search() { if (pbeg) { int k_poisk; //Прорисовка меню выбора
- 25. //Обработка выбора критерия пользователем switch (k_poisk) { case 1: //Поиск по номеру поезда int t_num; cout
- 26. case 2: //Поиск по имени пункта назначения char p_nazn[20]; cout fflush(stdin); gets(p_nazn); cout if (!find_punkt(pbeg, p_nazn))
- 27. case 3: //Поиск по времени отправления char v_otpr[10]; cout fflush(stdin); gets(v_otpr); cout if (!find_time(pbeg, v_otpr)) cout
- 28. //Функция удаления элемента из списка void del() { if (pbeg) { int t_num; //Ввод номера поезда
- 29. //Функция для проведения горизонтальной // линии в таблице void hline() { const int m=45; for (int
- 30. Результат работы
- 33. Скачать презентацию