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

Модель лифта - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Реализовать класс вектор http://www.cyberforum.ru/cpp-beginners/thread318922.html
Здравствуйте, помогите с последним пунктом задачи: Реализовать класс вектор, содержащий следующие поля: координаты вектора; методы класса: вывод вектора; перегружаемые операции:сложение, скалярное и векторное произведение и угол между векторами. // l6v9.cpp : Defines the entry point for the console application. //
C++ Функция не прекращает работать Здравствуйте. Нужно написать игру, цель которой угадать натуральное число которое придумал компьютер, в заданном промежутке от нуля, за заданное количество попыток. Проблема в том, что когда я выбираю первый пункт меню у меня начинает работать функция, отвечающая за игру, но после её завершения она начинает работать поновой. Я в панике. Подозреваю, что дело в переменной v, но если после запуска... http://www.cyberforum.ru/cpp-beginners/thread318915.html
C++ Потоки и паросочетания
Здравствуйте, опять появилась проблема с реализацией задания на С++. Самостоятельно решить не вышло, но смог найти реализацию на Паскале. Возможно, кто-то сможет помочь перевести с Паскаля на С++.(Скриншот в приложении или,возможно, кому-то будет удобней название книги с которой взято: М.С.Долинский "Решение Сложных и Олимпиадных Задач по программированию" 37ст, Питер 2006.) Зарание благодарен....
Итераторы в C++ C++
Помогите плз решить 2 задачи Задача 1 Напишите программу, использующую итераторы при чтении последовательности строк со стандартного устройства ввода в вектор. Отобразите элементы вектора. Задача 2 Перепишете предыдущую программу так, чтобы вместо вектора использовался список. Заранее благодарен)
C++ Работа с текстовыми файлами http://www.cyberforum.ru/cpp-beginners/thread318827.html
Дан текстовый файл F. Добавить в его конец символы E,N,D (если необходимо, использовать файл Q). Выручите - очень надо1!
C++ вычислить значение функции 1 где f(x) = {x}^{2} или f(x) = sh (x), но что за термин sh - я не в курсе. Подскажите пожалуйста. подробнее

Показать сообщение отдельно
Jagir
2 / 2 / 0
Регистрация: 13.06.2011
Сообщений: 12
13.06.2011, 16:53     Модель лифта
Доброго времени суток! Задача - реализовать в программе команды по управлению лифтом, учитывая практические ограничения ( лифт должен оставаться на этаже, куда "приехал" пользователь) . Мыслью было сделать нечто вроде текстовых игр ( т.е. последовательно задающиеся вопросы). В итоге написал код, но компилятор сильно ругается, особенно в мэйне (использую MS Visual Studio 2010) + хотелось бы выслушать в целом о программе - будет ли работать, каким образом можно оптимизировать?) Заранее спасибо!
Схему программы вложил + код:
Код
#include <iostream>
#include <cctype>
#include <cstring>
#include <cstdlib>

using namespace std;

class Lift {
	int current_floor,f;
	bool isOpened;
public:
    int GetCurrentFloor(), floor_menu(), wight_menu();
	static int start_menu()
    void SetCurrentFloor(int floor), CloseOpenDoors(bool n);
	 
};

int Lift::start_menu()
{
	char choice;

	cout << "\n";
	do {
		cout << " Enter \n (C)all lift\n (E)xit";
		cin>>choice;
	} while(!strchr("ce",tolower(choice)));
	return tolower(choice);
}

void Lift::CloseOpenDoors(bool n)
{
	bool IsOpened=n;
	if (isOpened == true) cout << "Doors are opened\n";
	if (isOpened == false) cout << "Doors are locked\n";
	
}

int Lift::wight_menu()
{
	int wight;
	cout << " Enter passanger's wight\n (limit - 1000 kg)";
	cin >> wight;
	if (0 < wight < 1000) {
		isOpened == false;
		CloseOpenDoors(isOpened);
		floor_menu();
	} else cout << " Limit is nesoblyuden!\n";
}
	
int Lift::floor_menu()
{
	int ch;
	cout << "\n There is five floors \nEnter number of floor\n";
	cin>>ch;
	switch(ch) {
	case 1:cout << "You're in this floor";break;
	case 2: 
		{
			isOpened==false;
		    CloseOpenDoors(isOpened);
		    cout << " \nlift come to" << ch << "floor\n";
		    isOpened==true;
		    CloseOpenDoors(isOpened);
		    break;
		}
	case 3: 
		{
			isOpened==false;
		    CloseOpenDoors(isOpened);
		    cout << " \nlift come to" << ch << "floor\n";
		    isOpened==true;
		    CloseOpenDoors(isOpened);
		    break;
		}
	case 4: 
		{
			isOpened==false;
		    CloseOpenDoors(isOpened);
		    cout << " \nlift come to" << ch << "floor\n";
		    isOpened==true;
		    CloseOpenDoors(isOpened);
		    break;
		}
	case 5: 
		{
			isOpened==false;
		    CloseOpenDoors(isOpened);
		    cout << " \nlift come to" << ch << "floor\n";
		    isOpened==true;
		    CloseOpenDoors(isOpened);
		    break;
		}
	default:cout << "error!";
	}
}

int Lift::GetCurrentFloor() 
{
	return current_floor;
}

void Lift::SetCurrentFloor(int f)
{ 
	current_floor = f;
}

int main()
{ 
	char choice;
	bool isOpened;
	cout << " Welcome to Lift programm!\n";

	for(;;) {
		choice=Lift::start_menu();
		switch(choice) {
		case 'c':
			{
			cout << " You called lift\n";
			isOpened==true;
			CloseOpenDoors();
			wight_menu();
			break;
			}
		case 'e':return 0;
		}
	}
}
Миниатюры
Модель лифта  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru