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

Промоделировать в консоли работу лифта - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Из первого множества выбрать три различные точки http://www.cyberforum.ru/cpp-beginners/thread810977.html
Даны два множества точек на плоскости. Из первого множества выбрать три различные точки так, чтобы треугольник с вершинами в этих точках содержал (строго внутри себя) равное количество точек первого и второго множеств. Завтра начну сам думать над задачей, если кто-то чем-то может помочь пишите, очень поможете.
C++ Некорректная запись кириллицы в файл Здравствуйте! Подскажите, пожалуйста, как можно исправить (и можно ли вообще) вот такую ошибку: 1) Вводим, например, вот такие данные: http://img13.imageshost.ru/img/2013/03/17/image_5145a6ec585ae.png 2) В файл записывается вот так: http://img13.imageshost.ru/img/2013/03/17/image_5145a70a39d61.png http://www.cyberforum.ru/cpp-beginners/thread810972.html
Напишите пожалуйста, коротко, функцию(С++) к данной задачке(про эллипс) C++
Добрый день всем! Пытаюсь решить задачу: По заданным целочисленным координатам вывести эллипсы. Определить, пересекаются ли фигуры, и найти площадь пересечения. По сути, как я понял, можно вычислить точки пересечения эллипсов, считать площадь сегментов каждого эллипса, отнять от каждого - площадь треугольника с основанием в длину хорды и с двумя другими сторонами - расстояния до центра...
Обработка строк. Поменять местами в предложении слова C++
Поменять местами в предложении слова: первое и последнее, второе и предпоследним и т.д.. Если слов нечетное количество, то среднее слово удалить.
C++ Объясните код http://www.cyberforum.ru/cpp-beginners/thread810954.html
Добрый день. Закомментируйте код программы пожалуйста. Не могу разобраться в нем.. Вот условие: Определить массив указателей на следующие функции: 1. среднее арифметическое; 2. сумма квадратов; 3. минимальное значение; 4. значение, максимально близкое к 0. Все функции описывать как float f(float, float, float). Внутри функции main организовать диалог с...
C++ Создание классов на Си Помогите написать прогу на Си с заданным условием : В тестовом примере создать три объекта заданного типа (для демонстрации вызова каждого конструктора). Значения для параметров конструктора с параметрами вводить с клавиатуры. Тип «Категория» определить как перечисление (enum) со значениями полей «холодные закуски», «первые блюда», «вторые блюда», «десерты», «напитки». Тип «Повар»... подробнее

Показать сообщение отдельно
kurica911
0 / 0 / 0
Регистрация: 20.12.2012
Сообщений: 6
17.03.2013, 15:22     Промоделировать в консоли работу лифта
Помогите пожалуйста доделать программу модуляции лифта. Вот мой код:
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
#include <iostream>
#include <stdio.h>
#include <locale.h>
using namespace std;
 
class lift 
{
    int ch_floor, f; // Выбор этажа
    bool opened; // лифт орткрыт?
public:
    int GetFloor(); // функция получения номера этажа
    int floor(); // меню выбора этажа
    int people(); // меню колличества людей
    static int start(); // меню запуска
    void SetFloor(int floor); // функция выбора этажа
    void Doors(bool n); // функция закрытия и открытия дверей     
};
 
int lift::start() // описание меню старта
{
        char choice;
        do 
        {
                cout << "\n Выберите действие: \n C - вызвать лифт \n E - выйти из программы \n ";
                cin>>choice;
        }
        while(!strchr("ce",tolower(choice)));
        return tolower(choice); // Возвращение строчного буквенного эквивалента
}
 
void lift::Doors(bool n) // описание функции закрытия и открытия дверей     
{
        bool opened=n;
        if (opened == true) cout << "\n Двери открыты\n";
        if (opened == false) cout << "\n Двери закрыты\n";
}
int lift::people()
{
        unsigned int num;
        cout << "\n Введите колличество вошедших людей (ограничение - 5 человек)  \n ";
        cin >> num;
        if (num < 6) 
        {
            floor();
        }
        else cout << "\n Перегрузка! Или введено отрицательное значение!\n";
        return 0;
}
        
int lift::floor() // описание меню выбора этажа
{
        int st;
        cout << "\n В этом доме 16 этажей \n Введите необходимый Вам этаж \n ";
        cin >> st;
        switch(st) 
        {
        case 1:cout << "\n Вы находитесь на этом этаже \n ";
            break;
        case 2: 
        case 3: 
        case 4: 
        case 5: 
        case 6: 
        case 7: 
        case 8: 
        case 9: 
        case 10: 
        case 11: 
        case 12: 
        case 13: 
        case 14: 
        case 15: 
        case 16: 
                {
                    opened = false;
                    Doors(opened);
                    cout << " \n Лифт прибыл на " << st << " этаж\n ";
                    opened = true;
                    Doors(opened);
                    break;
                }
        default:cout << "\n Такого этажа нет. \n ";
        }
        return 0;
}
 
int lift::GetFloor() // описание функции получения номера этажа
{
        return ch_floor;
}
 
void lift::SetFloor(int f) // описание функции выбора этажа
{ 
        ch_floor = f;
}
 
int main()
{ 
    setlocale(LC_ALL, "Russian"); // активация русского языка
    lift lift1;
    char choice;
    bool opened;
    cout << "\n Моделирование лифта! \n";
    for(;;) 
    {
        choice=lift::start();
        switch(choice) 
        {
            case 'c':
            {
                cout << "\n Вы вызвали лифт \n";
                opened=true;
                lift1.Doors(opened);
                lift1.people();
                break;
            }
            case 'e':
                return 0;
        }
    }
}
Осталось добавить пару моментов, а именно:
1) исправить пропажу количества людей людей в int lift:eople().
2) сделать чтобы лифт вызывался не только с первого этажа.
3) добавить высадку людей из лифта.
Подскажите, пожалуйста. Вроде бы мелочь осталась, но для меня это камень преткновения.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru