Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 28.02.2011
Сообщений: 5

Помогите подкорректировать программу

29.04.2011, 21:56. Показов 902. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание:
Составить программу, которая содержит текущую информацию о заявках на авиабилеты.
каждая заявка включает:
- пункт назначения;
- номер рейса;
- ФИО пассажира;
- желаемую дату вылета;
Программа должна обеспечмвать:
- хранение всех заявок в виде списка;
- добавление заявок в список;
- удаление заявок;
- вывод заявок по заданному номеру рейса и дате вылета;
- вывод всех заявок.
Программный код
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 <iostream>
#include <locale>
#include <ctime>
#include <string>
using namespace std;
typedef struct zajfka{ //  информация о заявках на авиабилеты:
    char point[100];    //- пункт назначения;
    int number;        //- номер рейса;
    char name1[20];    //- фамилия пассажира;
    char name2[20];    //- имя
    char name3[20];    //- отчество
    time_t date;        //- желаемая дата вылета;
    struct zajfka * next;    // указатель на структуру заявка.
}Node;
void addNode( Node *& list ); // - добавление заявок в список;
void deleteNode( Node *& list, const int num ); // - удаление заявок по заданному номеру рейса
void outNodeNum( const Node * list, int num ); // - вывод заявок по заданному номеру рейса
//void outNodeDate( const Node * list ); // - вывод заявок по дате вылета
void outNode( const Node * list ); // - вывод всех заявок.
void out( const Node * list ); // вывод одной заявки
bool if_end( char * ch, wchar_t *str = L"" );
//_________ MAIN_________________
int main(int argc, char *argv[])
{ 
    Node * list = NULL;
    wcout.imbue(locale(".866"));
    addNode( list );
    outNode( list );
    int num;
    wcout << L"\n\nВведите номер рейса для просмотра заявок этого рейса > ";
    cin >> num;        getchar();
    wcout << L"\n\nЗаявки с номером рейса "; cout << num;
    outNodeNum( list, num );
    wcout << L"\n\nУдаление заявок по заданному номеру рейса > "; 
    cin >> num;        getchar();
    deleteNode( list, num );
    wcout << L"\n\nОставшиеся заявки:";
    outNode( list );
    wcout << L"\n\nНажмите клавишу Enter для выхода из программы";
    getchar(); // пауза
    return 0;
}
//________ END MAIN ______________
void addNode( Node *& list ){
    wcout << L"Введите данные о заявках:\n";
    wcout << L"Для выхода введите слово \"end\"\n\n";
    int num = 0;
    while(1){
        num++;
        wcout << L"\nДанные о заявке № " << num << endl;
        Node * n = new Node;
        if( if_end( n->point,L"Введите пункт назначения > " )) break;
        wcout << L"Введите номер рейса > ";
        cin >> n->number;
        getchar();
        if( if_end( n->name1, L"Введите фамилию пассажира > " )) break;
        if( if_end( n->name2, L"Введите имя пассажира > " )) break;
        if( if_end( n->name3, L"Введите отчество пассажира > " )) break;
        //wcout << L"Введите желаемую дату вылета > ";
        //cin >> n->date;   // с датами я неработал ещё...
        n->next = list; // "пристыковываемся" в список
        list = n;
    }
}
bool if_end( char * ch, wchar_t *str  ){
    wcout << str;
    gets( ch );
    if( strcmp( ch, "end" )) return false;
    return true;
}
void out( const Node * list, int num ){
    wcout << L"\n\nЗаявка № " << num;
    wcout << L"\nПункт назначения > " << list->point;
    wcout << L"\nНомер рейса > "; cout << list->number;
    wcout << L"\nФамилия пассажира > " << list->name1;
    wcout << L"\nИмя пассажира > " << list->name2;
    wcout << L"\nВведите отчество пассажира > " << list->name3;
    //wcout << L"\nЖелаемая датa вылета > " << list->;
}
void outNode( const Node * list ){
    int n = 1;
    for(; list ; list = list->next ){
        out( list, n );
        n++;
    }
}
void outNodeNum( const Node * list, int num ){
    int n = 1;
    for(; list ; list = list->next ){
        if( list->number == num )
            out( list, n++ );
    }
}
void deleteNode( Node *& list, const int num ){
    int n = 1;
    Node *x, *y = list, *begin = list;
    wcout << L"\n\n_____ Удаление: ________";
    while( list ){
        if( list->number == num ){
            x = list->next;
            out( list, n );
            n++;
            if( list != y ){
                delete list;
                y->next = list = x;
            }// end  if( list != y ){
            else{
                delete list;
                y = list = x;
            }// end if( list != y ){
        }// end if( list->number == num ){
        else{
            y = list;
            list = list->next;
        }// end else  if( list->number == num )
    }// end while()
    list = begin;
}// end deleteNode()
После введения номера рейса для удаления заявок. Программа ложится!

Добавлено через 1 час 29 минут
Ну кто нибудь.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.04.2011, 21:56
Ответы с готовыми решениями:

Помогите подкорректировать!
//---------------------ZADANIE ------------------------- // Dany natural'noe chislo N, deystvitel'nye chisla // a, ... , a. Poluchit'...

Подкорректировать программу!
Ребят помогите пожалуйста! нужно немного изменить код! Вот начальный код: #include &lt;iostream&gt; #include &lt;string&gt; ...

Подкорректировать программу
Помогите в данной програме сделать так чтобы выводило нормально результат вычисление матрицы и помогите найти её найменьший элемент всех...

4
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
29.04.2011, 22:03
сделайте трассировку и поймете в каком операторе возникает ошибка
0
0 / 0 / 0
Регистрация: 28.02.2011
Сообщений: 5
29.04.2011, 22:12  [ТС]
мммммм Да. А ни кто бы не мог выявить ее и исправить?
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.04.2011, 22:13
А вы почему не можете этого сделать?
0
0 / 0 / 0
Регистрация: 28.02.2011
Сообщений: 5
30.04.2011, 13:17  [ТС]
Пытался но если бы смог не выкладывал бы ее сюда.! Ищу умного человека который бы исправил ее и подкорректировал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.04.2011, 13:17
Помогаю со студенческими работами здесь

Подкорректировать программу
Нужно было реализовать один из алгоритмов факторизации. Взял простой метод перебора возможных делителей. Также была задача оптимизировать...

Требуется подкорректировать программу
#include &lt;iostream&gt; using namespace std; class phone_name { char name; long int phone; public: void set_phone() { long...

подкорректировать программу со строками
#include &lt;string&gt; #include &lt;iostream&gt; int main() { std::string vowel = &quot;AaEeIiOoUuYy&quot;; std::string str; ...

Как можно упростить программу?(или подкорректировать)
(ссылка на задание) Вот мое решение : Код: #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream.h&gt; #include...

подкорректировать программу
нужно сделать так что-бы А) поиск осуществлялся по всем комбобоксам и при вводе текстовое поле имени ! Б) Проверить на наличие ошибок...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru