Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ф-я добавления и удаления элемента - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Курсовик http://www.cyberforum.ru/cpp-beginners/thread567824.html
Помогите пожалуйста СРОЧНО!!! 1.Сформировать одномерный массив структур, содержащий сведения о ежедневных рейсах на поезда дальнего следования, структура записи: номер поезда,станция назначения,...
C++ В одномерном массиве, состоящем из целых элементов, вычислить В одномерном массиве, состоящем из целых элементов, вычислить: А) количество элементов массива, не больших заданного элемента С, значение С вводить с клавиатуры. Б) сумму элементов массива,... http://www.cyberforum.ru/cpp-beginners/thread567802.html
Реализация каждого отдельного пункта меню с условием C++
Помогите пожалуйста реализовать пункты текстового меню, всего 5 категорий, но каждое меню должно выбираться по вводу определнной цифры или нажатию на нее. пробую через If но пока не получается.. пишу...
Ошибка в наследовании C++
Всем привет. Есть такой код: #include <iostream> using namespace std; class A { public : A(){}
C++ В одномерном массиве, состоящем из целых элементов, вычислить http://www.cyberforum.ru/cpp-beginners/thread567751.html
c# В одномерном массиве, состоящем из целых элементов, вычислить: А) количество элементов массива, не больших заданного элемента С, значение С вводить с клавиатуры. Б) сумму элементов массива,...
C++ Сколько времени двигался велосипедист? Велосипедист проехал расстояние S км двигаясь первую часть пути со скоростью V1 км/час . а другую часть пути со скоростью V2 км/час . Сколько времени двигался велосипедист ? Заранее спасибо ! подробнее

Показать сообщение отдельно
kristi1
10 / 10 / 1
Регистрация: 07.03.2010
Сообщений: 465

Ф-я добавления и удаления элемента - C++

07.05.2012, 20:32. Просмотров 348. Ответов 0
Метки (Все метки)

Здравствуйте! Помогите пожалуйста, у меня есть программа, все отлично работает, но мне нужно реализовать удаление и добавление элемента в оба списка, помогите пожалуйста, а то как-то не понятно, вот собственно код программы, в котором добавление элемента в самом низу кода:

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
#include <string>
#include <fstream>
#include <iostream>
#include "conio.h"
 
using namespace std;
 
typedef struct BusInfo
{
    int nummarsh;
    char name[50];
    char from[50];
    char to[50];
    int price;
    int numofseats;
    
    BusInfo *next;
};
 
typedef struct PasInfo
{
    int nummarsh;
    string name;
    string from;
    string to;
    int price;
    int numofseats;
    
    PasInfo *next;
};
 
int main ()
{
    ifstream finp ("pass.txt"), fina ("auto.txt");
    ofstream fout ("protocol.txt"), fg ("out.txt");
    BusInfo *heada = NULL;
    PasInfo *headp = NULL;
/*  char test[1];
    finp >> test;
        if(test == "")
    {
        std::cout << "\tФайл pass.txt пуст" << std::endl;
        return 0;
    }
    finp.seekg( 0, std::ios::beg );
    fina >> test;
    if(test == "")
    {
        std::cout << "\tФайл auto.txt пуст" << std::endl;
        return 0;
    }*/
    fina.seekg( 0, std::ios::beg );
    int ma=0;
    
    while (!fina.eof())
    {
        BusInfo *cur = new BusInfo;
        cur->next = heada;
        fina >> cur->nummarsh;   fout << "Добавлено:" << cur->nummarsh<< "\n";
        fina >> cur->name;       fout << "Добавлено:" << cur->name << "\n";
        fina >> cur->from;       fout << "Добавлено:" << cur->from << "\n";
        fina >> cur->to;         fout << "Добавлено:" << cur->to<< "\n";
        fina >> cur->price;      fout << "Добавлено:" << cur->price<< "\n";
        fina >> cur->numofseats; fout << "Добавлено:" << cur->numofseats<< "\n";
 
        fout << "Маршрут добавлен:" << cur->name<< "\n\n";
        heada=cur; ma++;
    } 
    fout << "Добавлено маршрутов: " << ma << endl << endl << endl;
    fina.close();
    finp.seekg( 0, std::ios::beg );
    int pa=0;
    
    
    while (!finp.eof())
    {
        PasInfo *curs = new PasInfo;
        curs->next = headp;
        finp >> curs->nummarsh;   fout << "Добавлено:" << curs->nummarsh<< "\n";
        finp >> curs->name;       fout << "Добавлено:" << curs->name << "\n";
        finp >> curs->from;       fout << "Добавлено:" << curs->from << "\n";
        finp >> curs->to;         fout << "Добавлено:" << curs->to<< "\n";
        finp >> curs->price;      fout << "Добавлено:" << curs->price<< "\n";
        finp >> curs->numofseats; fout << "Добавлено:" << curs->numofseats<< "\n";
        
        fout << "Пассажир из очереди инициализирован как:" << curs->name<< "\n\n";
        headp=curs;pa++;
    } 
    fout << "Количество пассажиров в очереди = " << pa << endl << endl << endl;
    finp.close();
 
    BusInfo *cur=heada;
    while (cur) 
    {
        PasInfo *curs=headp;
        while (curs)
        { fout  << "Выполняется проверка маршрута и пассажира " 
                << cur->name << "  "
                << curs->name << endl;
            if (curs->nummarsh==cur->nummarsh 
             && curs->from==cur->from 
             &&curs->to==cur->to
             &&curs->price==cur->price
             && cur->numofseats-curs->numofseats>=0) 
             {
                 fout << "Пассажир добавлен в автобус\n\n";
                 cur->numofseats=cur->numofseats-curs->numofseats;
            }
            else fout << "Невозможно добавить пассажира\n\n";
            curs=curs->next;
        }
        cur=cur->next;
    }
 
    // getch ();
}
 
 
void EnterNewBus (int nummarsh, 
             char name[50], char from[50],  
             char to[50], int price, int numofseats, int &ma, ofstream fout)
{
        BusInfo *cur = new BusInfo;
        cur->next = heada;
        cin >> cur->nummarsh;    fout << "Добавлено:" << cur->nummarsh<< "\n";
        cin >> cur->name;        fout << "Добавлено:" << cur->name << "\n";
        cin >> cur->from;        fout << "Добавлено:" << cur->from << "\n";
        cin >> cur->to;      fout << "Добавлено:" << cur->to<< "\n";
        cin >> cur->price;       fout << "Добавлено:" << cur->price<< "\n";
        cin >> cur->numofseats; fout << "Добавлено:" << cur->numofseats<< "\n";
        fout << "Маршрут добавлен:" << cur->name<< "\n\n";
        heada=cur; ma++;
}
 
Заранее благодарна!
Добавлено через 6 часов 9 минут
Все, я сама разобралась)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru