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

Гаражная стоянка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Абстрактный класс и его производные http://www.cyberforum.ru/cpp-beginners/thread200152.html
Здравствуйте. Мне необходимо построить иерархию классов - базовый абстрактный и два производных. Оба производных класса имеют несколько одинаковых свойств и один одинаковый метод. Вопросы: В каком из классов описать эти свойства и методы - в базовом или в обоих производных? Есть необходимость использовать инициализацию классов через конструкторы - надо ли в базовом классе описывать...
C++ Вычислить среднее арифметическое всех положительных членов последовательности Дано натуральное П и последовательность целых чсел х1,х2,....,хn.Написать программу решения следующей задачи:ивычеслить среднее арифметическое всех положительных членов последовательности. Не дублируйте задания в разных темах http://www.cyberforum.ru/cpp-beginners/thread200140.html
Создать объединение, что содержит элементы типов char int short fload long string C++
всем доброго времени суток! мне нужно создать объединение, что содержит элементы типов char int short fload long string. создать массив элементов типа объединения и заполнить элементы данного массива случайными значениями за таим условием: элементы массива 0,3,6,9 должны содержать элементы первого типа, 1,4,7,10 другого, 2,5,8,11 третьего и вычислить суму элементов каждого типа зарание спасибо...
Сформировать динамический двумерный массив, заполнить его случайными числами и вывести на печать C++
Все привет!Прошу помочь,на примере этой задачи нужно сформировать динамический двумерный массив, заполнить его случайными числами и вывести на печать.Добавить строку в начало матрицы. #include <iostream.h> #include <conio.h> #include <string.h> #include <stdlib.h> void main() {int n,m; int i,j; cout<<"\n Enter n";
C++ Ввести с клавиатуры строку символов,удалить все гласные буквы из строки http://www.cyberforum.ru/cpp-beginners/thread200118.html
Помогите со строками... Ввести с клавиатуры строку символов,удалить все гласные буквы из строки. На примере этого: #include <iostream.h> #include <string.h> #include <conio.h> #include <assert.h> void printCharacters(const char*); int find (char*,char);
C++ Написать логическую структуру Помогите пожалуйста очень надо написать логическую структуру я в этом полный 0! 1 листинг 1. #include <conio.h> 2. #include <stdio.h> 3. #include<math.h> 4. float a; 5. p(int b) 6. { 7. int i; 8. float y; подробнее

Показать сообщение отдельно
{qwerty
1 / 1 / 0
Регистрация: 04.10.2010
Сообщений: 3

Гаражная стоянка - C++

29.11.2010, 18:59. Просмотров 1545. Ответов 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
#include "stdafx.h"
#include "conio.h"
#include <iostream>
using namespace std;
struct garage
{
    int d;
    garage *prev;   
};
garage * first(int d);
int push(garage **t, int d);
int pop(garage **t);
 
 
 
// Начальное формирование стека
garage* first(int d)
{
    garage *pv = (garage*)calloc(1,sizeof(garage));
    pv->d = d;
    pv->prev = 0;
    return pv;
}
 
// Занесение в стек
int push(garage **t, int i)
{
    garage *pv = (garage*)calloc(1,sizeof(garage));
    pv->d = i;
    pv->prev = *t;
    *t = pv;
    return 0;
}
 
 
// Выборка из стека
int pop (garage **t)
{
    int number = (*t)->d;
    garage *pv = *t;
    *t = (*t)->prev;
    free(pv);
    return number;
}
void function(garage **t, int number)
{
    garage *pv=*t,*t2=(garage*)calloc(1,sizeof(garage)),*p;
    int k=0;
    while(pv->d!=number)
    {
        cout<<"номер выезжающей машины "<<pv->d<<endl;
        push(&t2,pv->d);
        pv=pv->prev;
        
    }
    cout<<"номер нужной машины "<<pv->d<<endl;
    pv=p=t2;
    while(pv->prev!=0)
    {
        cout<<"номер прибывающей машины "<<pv->d<<endl;
        p=pv->prev;
        free(pv);
        pv=p;
    }
    free(pv);
}
int main()
{
    setlocale(LC_ALL,"Russian");
    int n,priznak,number,i,menu=0;
    garage* t = first(1);
    cout<<"введите количество машин:"<<endl;
    cin>>n;
    do{
        cout<<"В гараже "<<n<<" машин"<<endl;
        cout<<"Номер машины, которая покидает гараж: ";
        cin>>number;
        if(number>=n)
            cout<<"Такой машины в гараже нет!"<< endl;
        else if(n==1)
                cout<<"в гараже одна машина"<<endl;
                else 
                {
                    for (int i = 2; i<=n; i++)
                    push(&t, i);
                    function(&t,number);
                    n--;
                } 
             
            cout<<"Хотите повторить? ДА - 1"<<endl;
            cin>>menu;
        }while(menu == 1 && number != 0);
    
    getch();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru