Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.09.2012, 13:44   #1
PointBreak
Пользователь
 
Регистрация: 12.05.2012
Сообщений: 15
По умолчанию Цифровой счетчик в С++

Здравствуйте! Подскажите пожалуйста с этой задачей:
Цифровой счетчик - это переменная с ограниченным диапазоном, которая сбрасывается, когда её целочисленное значение достигает определенного максимума. Примеры: цифровые часы, счетчик километража. Опишите класс такого счетчика. Обеспечьте возможности:
1) установления максимального и минимального значений;
2) увеличения счетчика на 1;
3) уменьшения счетчика на 1;
4) возвращения текущего значения.
где-то в теме С++ уже писали код данной задачи только без 3 пункта.
Код:
#include<iostream>
using namespace std;
class Chet
{
    int k,min,max,k2;
public:
    Chet()
    {
        int k2=0,min=0,max=100; 
    }
    ~Chet()
    {
    cout<<"Работает деструктор!\n";
    }
    void Inpmin(int);
    void Inpmax(int);
    void Plus();
    void Show();
}obj;
void Chet::Plus()
{
    k++;
    if(k>=(max+1))
    {
        k2++;
        k=min;
    }
    
}
void Chet::Inpmin(int b)
{
    min=b;
    k=min;
}
void Chet::Inpmax(int d)
{
    max=d;
}
 
void Chet::Show()
{
    cout<<k2<<" : "<<k<<endl;
}
void main()
{
    setlocale(LC_CTYPE,"Rus");
    int omax=0, omin=0,key=0;
    do
    {
        cout<<"Введите минимальное значение: ";
        cin>>omin;      
        cout<<"Введите максимальное значение: ";
        cin>>omax;      
        if((omax<omin)||(omin==omax))
        cout<<"Минимальное значение должно быть меньше максимального и они не должны быть равны\n Повторите ввод\n";
    }while((omax<omin)||(omin==omax));
    obj.Inpmin(omin);
    obj.Inpmax(omax);
    system("pause");
    system("cls");
    do
    {
        cout<<"1. Увеличение счетчика на 1\n2. Вывод значения счетчика\n0. Выход\n";
        cin>>key;
        switch(key)
        {
        case 1:
            obj.Plus();
            system("cls");
            break;
        case 2:
            obj.Show();
            system("pause");
            system("cls");
            break;
        case 0:
            cout<<"До свидания !\n";
            break;
        default:
            cout<<"Выбрано неправильное действие\n";
            system("pause");
            system("cls");
            break;
        }   
    }
 
    while(key!=0);
}
и вот возникли некоторые вопросы:
1) обязателен ли здесь деструктор?
2) что такое obj и зачем оно здесь после описания класса Chet?
3) можете помочь в написании пункта 3 - уменьшение счетчика на 1?
PointBreak вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка изображений, цифровой фильтр sanya3112 Помощь студентам 0 12.04.2012 00:26
Форматировать число с текстового в цифровой... Slavatron1984 Microsoft Office Excel 5 15.12.2011 17:12
Хранение цифровой техники Leshiy1 Свободное общение 11 29.11.2011 22:02
Выбор цифровой мыльницы Баламут Свободное общение 8 12.12.2009 04:11
Хочу купить цифровой фотоаппарат Altera Свободное общение 18 15.06.2008 04:59