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

смоделировать однополосную стоянку - C++

Восстановить пароль Регистрация
 
Svj@t
0 / 0 / 0
Регистрация: 11.11.2013
Сообщений: 3
22.12.2013, 16:59     смоделировать однополосную стоянку #1
Задача заключается в том, чтобы смоделировать однополосную стоянку, то есть сделать очередь. При въезде машины выводилось сообщение, что машина с таким-то номером въехала, при выезде, что выехала и сколько раз выехала. Программа запускается и при вводе элемента и его же удалении программа падает. Вот код:http://pastebin.com/av2x2JVF

Добавлено через 57 минут
Извиняюсь, но я сам переделал, вот код:
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
#include "stdafx.h"
#include <iostream>
#include <clocale>
using namespace std;
struct Node
{
    int number;
    int info;
    Node *next;
 
};
 
Node *First = 0;
Node *Last = 0;
 
 
 
void add_car(int number)
{
 
    Node *pv = new Node;
    pv->next = 0;
    pv->number = number;
    cout << "Машина с номером     " << pv->number << ' ' << "въехала на стоянку" << endl << endl << endl;
    pv->info = 0;
    
    
    if (First == NULL)
    {
        First = pv;
    }
    else
    {
        pv->next = Last;
    }
        Last = pv;
    
    
}
void delete_car(int number)
{
 
    Node *tmp = Last;
    Node *tmp3 = Last;
    Node *pr = 0;
    if (Last == 0)
    {
        cout << "Cтоянка пуста" << endl;
    }
    else
    {
        while ((tmp != 0) && (tmp->number != number))
        {
            pr = tmp;
            tmp = tmp->next;
            tmp3 = tmp;
        }
        if (tmp == 0) /////////////////
        {
            cout << "Машины с данным номером нет на стоянке" << endl;
        }
        else
        {
            cout << "Машина с номером     " << tmp->number << ' ' << "выезжала со стоянки" << ' ' << tmp->info++ << ' ' << "раз" << endl << endl << endl;
            while (tmp != 0)
            {
                tmp->info++;
                tmp = tmp->next;
            }
        }
        if (tmp3 != 0)
        {
            if (tmp3 != Last)
            {
                pr->next = tmp3->next;
                delete tmp3;
                delete tmp;
            }
            else
            {
                Last = tmp3->next;
                delete tmp3;
                delete tmp;
            }
        }
        else 
        {
            pr = First;
            pr->next = 0;
            delete tmp3;
            delete tmp;
 
        }
    }
}
int main()
{
    setlocale(LC_ALL, "Russian");
    int number;
    number = 0;
    Node *First = 0;
    Node *Last  = 0;
    int menu = 0;
    
    do
    {
        cout << " Вас приветствует система управления парковки." << endl << " Выберите необходимое вам действие и нажмите enter" << endl;
        cout << "1.Добавить машину" << endl;
        cout << "2.Удалить машину" << endl;
        cout << "3.Выход" << endl;
        cin >> menu;
        switch (menu)
        {
        case 1:
            cout << "Введите целочисленный номер машины" << endl;
            cin >> number;
            add_car(number);
            break;
        case 2:
            cout << "Введите целочисленный номер машины" << endl;
            cin >> number;
            
                delete_car(number);
            
            break;
        }
    } while (menu != 3);
    delete First;
    First = 0;
    delete Last;
    Last = 0;
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2013, 16:59     смоделировать однополосную стоянку
Посмотрите здесь:

C++ смоделировать транспортные потоки
Смоделировать очередь с помощью масива C++
C++ Смоделировать операцию умножения двух целых чисел
C++ [C++] Смоделировать работу линейного рекуррентного регистра
C++ Смоделировать обслуживание 200 вызовов
Функции,задачка на стоянку автомобилей,чуть переделать C++
C++ Смоделировать на компьютере последовательность бросаний несимметричной монеты
Смоделировать падение мяча C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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