Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание класса 
V
    Опции темы
Nikita92
Дата 2.11.2016, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 2.11.2016

Репутация: нет
Всего: нет



Подскажите пожалуйста, как задать методы чтобы программа заработала. 

Задание:

Составьте объектно-ориентированную программу, имитирующую работу автоматического турникета при въезде на парковку. Программа должна моделировать ситуацию, когда часть машин оплачивает парковку, а часть машин проезжает бесплатно. В кассе ведется учет числа проехавших за день машин и суммарной выручки от оплаты парковки.

Для реализации программы создайте класс, например, с именем gate.

В состав полей данных класса включите три переменные:
целочисленную переменную, например, с именем payCars, типа unsigned int для учета числа машин, оплативших парковку;
целочисленную переменную, например, с именем nopayCars, типа unsigned int для учета числа машин, не оплативших парковку;
целочисленную переменную, например, с именем totalCash, типа unsigned int для хранения суммарной выручки от оплаты парковки.

В состав методов класса включите следующие функции:
конструктор класса, инициализирующий все поля нулевыми значениями;
функцию, например, с именем payingCars(), инкрементирующую количество оплативших парковку машин и увеличивающую суммарную выручку на величину тарифа за парковку;
функцию, например, с именем nopayingCars(), инкрементирующую количество не оплативших парковку машин и оставляющую суммарную выручку без изменения;
функцию, выводящую на экран результаты работы турникета за день.

В функции main() продемонстрируйте работу класса. Для этого в ней:
создайте объект класса gate;
предложите пользователю:
нажать одну клавишу для имитации заплатившего водителя;
нажать другую клавишу для имитации недобросовестного водителя;
нажать клавишу ESC (код клавиши – 27).
Нажатие клавиши ESC должно приводить к выводу всей информации о работе парковки и завершению работы программы.

Для считывания введенных пользователем данных используйте функцию _getche().
Для передачи тарифа за парковку в метод payingCars() используйте глобальную переменную.

Вот код:

Код


#include <iostream>
#include <windows.h>
#include <conio.h>
using namespace std;
int tarif = 50;
class gate
{
public: unsigned int payCars, nopayCars, totalCash;
public:gate(): payCars(0), nopayCars(0), totalCash(0)
{}
       void payingCars()
       {
           payCars++;
           
           
           totalCash += tarif;

           
       }
       void nopayingCars()
       {
           nopayCars+=nopayCars;

       }
       void vivod()
       {
           
           cout << "Количество проехавших машин:   " <<  payCars+ nopayCars << endl <<
                   "Из них: оплатили парковку:     "  << payCars << endl <<
                   "        не оплатили парковку:  " << nopayCars << endl << endl <<
                   "Общая сумма выручки:  " << totalCash << " рублей\n";
       }
};


int main()
{
    SetConsoleOutputCP(1251);
    gate gt;
    cout << "\nНажмите клавиши: 0 - для каждой машины без оплаты\n" <<
        "                        1 - для каждой оплачивающей машины\n" <<
        "                       Esc - для выхода" << endl << endl;

    char ch;
    
    while ((ch=_getche())!=27)
    {

        
        
            
            if (ch == 1)
                gt.payingCars();
                if (ch == 0)
                gt.nopayingCars();
            

        
        
    }
    cout << endl;
    gt.vivod();
}

[/code]
[/code]
PM MAIL   Вверх
Nikita92
Дата 2.11.2016, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 2.11.2016

Репутация: нет
Всего: нет



Ошибка найдена : '0' '1'
PM MAIL   Вверх
xvr
Дата 3.11.2016, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 35
Всего: 223



Это не единственная ошибка  smile Ищите дальше  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0734 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.