Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
LenaSV
0 / 0 / 0
Регистрация: 11.04.2009
Сообщений: 22
#1

контроллер видеомагнитофона - C++

31.05.2009, 10:03. Просмотров 483. Ответов 3
Метки нет (Все метки)

Пусть имеется магнитофон с записью операций
Требуется определить самую часто воспроизводимую кассету
то есть такую для которой операция воспроизведения производилась наиболее часто
помогите доделать
Код
#include <iostream>
#include <string>
#include <vector>
using namespace std;
class magnitofon
{
        bool play, rec, kasset, stop;   // Процессы: воспроизведение, запись и наличие кассеты
        int rew;                                                // Процесс перемотки (положительное число - вперёд на заданный интервал, 
                                                                        // отрицательное число - назад на заданный интервал, 0 - бездействие)

        vector<string>  ListDat;                // Запоминает все действия
public:
        magnitofon()                                    // Конструктор
        {
                play = false;
                stop = false;                           // По-умолчанию все процессы выключены
                rec = false;
                rew = 0;
                kasset = false;                         // По-умолчванию кассеты нет
        }
 void m_stop()                                   // Метод останавливает все процессы видеомагнитофона
        {
                play = false;
                rec = false;
                rew = 0;
                ListDat.push_back("m_stop");
        }

        void m_play()                                   // Метод включает воспроизведение кассеты
        {
                m_stop();                                       // Может быть активен только один процесс, поэтому вызывается метод "Stop"
                play = true;
                ListDat.push_back("m_play");
        }

        void m_rew(int interval)                // Метод перематывает кассету в заданном направление
        {
                m_stop();
                rew = interval;                         // Перемотка на заданный интервал
                ListDat.push_back("m_rew");
        }

        void m_rec()                                    // Метод начинает запись
        {
                if (play) rec = true;           // Запись возможна только при включённом процессе play
                ListDat.push_back("m_rec");
        }

        void insert()                                   // Метод вставляет кассету
        {
                m_stop();
                kasset = true;
                ListDat.push_back("insert");
        }

        void get()                                              // Метод достаёт кассету      
        {
                m_stop();
                kasset = false;
                ListDat.push_back("get");
        }

        bool check()                                    // Метод проверяет, есть ли кассета
        {
                return kasset;                          // Возвращает true, если кассета есть, в противном случае false.
        }

        void outListDat()
        {
                vector<string>::iterator it;
                for(it = ListDat.begin(); it != ListDat.end(); ++it)
                        cout<<*it<<endl;
        }
};
struct Kassete
{
  Kassete() : InsertCount(0),  id(unique_id++){ }
    int InsertCount;
    int id;;
    static int unique_id;
};
int Kassete::unique_id = 0;

bool cmp_fcn(const Kassete &k1, const Kassete &k2) {
  return k1.InsertCount > k2.InsertCount;
}

int main() {
 magnitofon mag;
        mag.insert();
        mag.m_play();
        mag.m_rec();
        mag.m_rew(1);
        mag.m_stop();
        mag.get();

        mag.outListDat();

  std::partial_sort(kassete, kassete + 1, kassete + 100, cmp_fcn);
  int max_number = kassete[0].InsertCount;
  int id_kassette = kassete[0].id;
int max=0;
for (int i=0; i<100; ++i) проходим весь список касет.
   if (kassete[i].InsertCount > kassete[max].InsertCount) max=i;

std::cout << "Больше всех (а именно "<< kassete[max].InsertCount) "раз) была вставлена кассета с id " << max;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2009, 10:03
Я подобрал для вас темы с готовыми решениями и ответами на вопрос контроллер видеомагнитофона (C++):

контроллер видеомагнитофона - C++
как исправить класс для представления понятия &quot;контроллер видеомагнитофона&quot;(обеспечивает програмное управление видеомагнитофоном, который...

контроллер видеомагнитофона - C++
проверьте пжлст разработать класс для представления понятия &quot;контроллер видеомагнитофона&quot;(обеспечивает програмное управление...

класс для представления понятия "контроллер видеомагнитофона" - C++
класс для представления понятия &quot;контроллер видеомагнитофона&quot;(обеспечивает програмное управление видеомагнитофоном, который может...

Разработать класс "Контролер видеомагнитофона" - C++
Разработать класс для представления понятия &quot; Контролер видеомагнитофона&quot; Контроллер обеспечивает программное управление...

Writefile() & String - В контроллер приходит не то, что было отправлено - C++
Почему отправляю в com порт &quot;Device?\n&quot; а в котроллер приходит &quot;ppDevice?\n&quot; ???? void Com::Send_package(String str) { char...

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления" - C++
Помогите с кодом написания задачи, не понимаю как написать классы в классе. Нужно создать класс &quot;вентилятор&quot; содержащий в себе классы:...

3
Search..
Заказ софта
340 / 185 / 10
Регистрация: 26.05.2009
Сообщений: 863
31.05.2009, 13:46 #2
Гонишь). Ты собираешься магнитофон к компу подключать, и вычислять этой программой ? =)
Жесть...
1
LenaSV
0 / 0 / 0
Регистрация: 11.04.2009
Сообщений: 22
31.05.2009, 17:09  [ТС] #3
ты это серьёзно?
0
Search..
31.05.2009, 17:38     контроллер видеомагнитофона
  #4

Не по теме:

ыыы

1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2009, 17:38
Привет! Вот еще темы с ответами:

SM контроллер шины, сетевой контроллер и ethernet контроллер - Драйверы для сетевых карт
подскажите где скачать sm контроллер шины, сетевой контроллер и ethernet контроллер для делл инспирон 6400.

asus K53S -sm контроллер шины -контроллер универсальный последовательной шины USB и с. контроллер - Драйверы для ноутбуков
Люди добрые!! помогите пожалуйста найти драйвера на windows 7 32-b -sm контроллер шины -контроллер универсальный последовательной шины...

Отцифровка с видеомагнитофона Toshiba V-852EW - Видеопрограммы
Здравствуйте. Имеется данный магнитофон и одна старая памятная касета. Ещё 2002 года, семейная. При попытке оцифровать его с помощью платы...

.NET 4.x Контроллер SPI. Как выбрать контроллер из списка? - C# WPF
Всем доброго дня Задача получить один из двух контроллеров SPI в системе. SpiConnectionSettings spiSettings; SpiController...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru