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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.80
Serdox
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 32
13.01.2013, 22:46     Составить программу, которая содержит текущую информацию о заявках на авиабилеты #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
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
#include "stdafx.h"
#include <cstdio>
#include <conio.h>
#include <clocale>
#include <windows.h>
struct Bilet {
    int num;//Номер заявки
    char pn[30];// Пункт назначения
    int rei; // Номер рейса
    char name[40]; // ФИО пассажира
    int day;// День вылета
    int monat;//Месяц вылета
    int year;//Год вылета
    
    Bilet *next;
};
Bilet* first(int , char* , int , char* , int, int, int );
void add(Bilet**, int, char*, int, char*, int, int, int);
Bilet* search(Bilet* const, int);
void viewList(Bilet*);
void viewHead();
 
Bilet* first(int num, char *pn, int rei, char *name, int day, int monat, int year){
    Bilet *enew = new Bilet;
    enew->num = num;
    strcpy(enew->pn, pn);
    strcpy(enew->name, name);
    enew->day = day;
    enew->monat=monat;
    enew->year = year;
    enew->rei = rei;
    enew->next = 0;
    return enew;
}
void add(Bilet **eend, int num, char *pn, int rei, char *name, int day, int monat, int year)
{
    Bilet *enew = new Bilet;
    enew->num = num;
    strcpy(enew->pn, pn);
    strcpy(enew->name, name);
    enew->rei = rei;
    enew->day = day;
    enew->monat=monat;
    enew->year = year;
    enew->next = 0;
    (*eend)->next = enew;
    *eend = enew;
    return;
}
Bilet* search(Bilet * const ebeg, int num) {
    Bilet *enew = ebeg;
    while(enew) {
        if(enew->num == num)
            break;
        enew = enew->next;
    }
    return enew;
}
  void viewAvialableList(Bilet *ebeg) {
  }
    
void viewList(Bilet *ebeg) {
    Bilet *enew = ebeg;
    while(enew) {
        printf(" Заявка номер %d\n", enew->num);
        printf(" Пункт назначения: %s\n", enew->pn);
        printf(" ФИО пассажжира: %s\n", enew->name);
        printf(" Номер рейса: %d\n", enew->rei);
        printf(" Дата вылета: %d/%d/%d\n\n",enew->day,enew->monat,enew->year);
        if(enew->next) printf("\n");
        enew = enew->next;
    }
    return;
}
void viewHead() {
    system("cls");
    printf("1. Добавить заявку.\n");
    printf("2. Вывод всех заявок.\n");
    printf("3. Запрос заявки по номеру рейса.\n");
    printf("4. Запрос заявки по дате.\n\n");
    
    printf("0. Выход.\n");
    return;
}
 
int main()  
{ 
    {SetConsoleCP(1251);
 SetConsoleOutputCP(1251);}
    setlocale(0, "Russian");
    bool exit = false;
    char c=0;
    Bilet *ebeg=0, *eend=0;
    int day=0, monat=0, year=0, num=0, rei=0;
    char pn[30] = {0},
        name[40] = {0};
    while(!exit) {
        viewHead();
        c = _getch();
        system("cls");
        switch(c) {
            case '1': // Добавить заявку
                if(!eend) num = 1;
                else num = eend->num + 1;
                printf("Номер заявки: %d\n", num);
                printf("Пункт назначения: ");
                scanf("%s",pn);
                printf("Номер рейса: ");
                scanf("%d",&rei);
                printf("ФИО пассажира(ИвановИА): ");
                scanf("%s", name);
                printf("Дата вылета(день/месяц/год): ");
                scanf("%d/%d/%d", &day, &monat, &year);
                if(!ebeg) {
                    ebeg = first(num, pn, rei, name, day, monat, year);
                    eend = ebeg;
                } else
                    add(&eend, num, pn, rei, name, day, monat, year);
                printf("Заявка добавлена!");
                fflush(stdin);
                _getch();
                break;
 
            case '2': // Вывод всего списка заявок
                if(ebeg)
                    viewList(ebeg);
                else
                    printf("Заявок нет!.\n");
                _getch();
                break;
 
                case '3'://Запрос заявки по номеру рейса
                if(ebeg)
                    viewAvialableList(ebeg);
                else
                    printf("Такой заявки не существует.\n");
                _getch();
                break;
            case '0':
                exit = true;
                break;
            default:
                break;
        }
    }
    return 0;
}
Буду очень благодарен! Очень надо!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2013, 22:46     Составить программу, которая содержит текущую информацию о заявках на авиабилеты
Посмотрите здесь:

Составить прогу - Информация о заявках на авиабилеты C++
Составить программу, которая содержит текущую информацию о книгах в библиотеке C++
Составить программу, которая содержит текущую информацию о книгах в библиотеке C++
Динамические структуры данных. Составить программу, которая содержит текущую информацию о книгах в библиотеке C++
Составить программу , которая содержит динамическую информацию о наличие автобусов в парке C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
avg93
61 / 61 / 10
Регистрация: 11.12.2009
Сообщений: 247
Завершенные тесты: 3
13.01.2013, 23:36     Составить программу, которая содержит текущую информацию о заявках на авиабилеты #2
Это уже список получается...


Цитата Сообщение от Serdox Посмотреть сообщение
Вывод заявок по заданному рейсу и дате вылета
Проходим по всем элементам списка, проверяя в каждом дату или номер рейса. Либо совпадение их. Я бы сделал 2 отдельных метода, один для даты другой для номера.
vua72
410 / 410 / 83
Регистрация: 28.11.2010
Сообщений: 1,158
13.01.2013, 23:37     Составить программу, которая содержит текущую информацию о заявках на авиабилеты #3
наверное, правильней разделить структуры и выделить рейс, пункт назначения, дату в отдельную структуру, плюс туда же можно указать количество доступных мест и класс места.
Tetraider
 Аватар для Tetraider
15 / 15 / 1
Регистрация: 06.06.2012
Сообщений: 58
28.12.2013, 22:59     Составить программу, которая содержит текущую информацию о заявках на авиабилеты #4
Кто может сделать? Готов немного заплатить...
Yandex
Объявления
28.12.2013, 22:59     Составить программу, которая содержит текущую информацию о заявках на авиабилеты
Ответ Создать тему
Опции темы

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