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

Не могу понять как передать - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массив указателей на функцию http://www.cyberforum.ru/cpp-beginners/thread1029571.html
Напишите программу, чтобы она управлялась при помощи меню. Программа должна предлагать пользователю выбор из нескольких команд примерно таким образом: Выберите: 0 Вывести массив оценок 1 Найти...
C++ Объясните функцию? Нужно объяснить и написать вызов функции. Функция связана со строками, но что делает не пойму. int F(char *p){ int n; if (*p=='\0') return 0; if (*p!=' ') n=1; else n=0; for (p++; *p!='\0';... http://www.cyberforum.ru/cpp-beginners/thread1029557.html
Можно ли строку получить из другой строки путем вычеркивания некоторых символов? C++
Помогите, пожалуйста, решить задачку. даны две строки st1 и st2 . выяснить, можно ли строку st2 получить из строки st1 путем вычеркивания некоторых символов
Реализовать класс Person (персона) C++
в общем, утопающий студент просит о помощи, потому как сам уже себя не успеет спасти. нужно к понедельнику сдать 5 лабораторных на с++ вот задания: 2.Реализовать класс Person (персона) –...
C++ Выделить нечетные слова во всех предложениях строки http://www.cyberforum.ru/cpp-beginners/thread1029528.html
полностью задача звучит так:ввести текст, состоящий из нескольких предложений. Написать программу, которая определяет в первом предложении количество слов, длина которых меньше заданного k, и выводит...
C++ разработать программу сортировки одномерных массивов 1: создать и отсортировать одномерный массив используя алгоритм сортировки выбором 2: создать и отсортировать одномерный массив используя алгоритм сортировки вставкой 3: создать и отсортировать... подробнее

Показать сообщение отдельно
Delacroic
0 / 0 / 0
Регистрация: 04.12.2013
Сообщений: 61
06.12.2013, 02:18  [ТС]
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
122
123
124
125
126
127
128
129
130
// sdfsdf.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <Windows.h>
#include <time.h>
#include <ctime>
#include <tchar.h>
#include <conio.h>
#include <sstream>
#include <locale>
#include <string>
#include <dos.h>
 
using namespace std;
 
class GroupMachine
 {
   private:
           int countTime;         //переменная для счета времени
           int countMachine;      //кол-во станков в группе
           int timeToWorked;      //время работы 
           int * timeToEndWork;   //время до конца работы станка
           int * countDetail;     //кол-во деталей обработаных станком
           int * modeMachine;     //режим работы станка
   public:                                          
          GroupMachine ()                              
          {
 
              cout << "BBeDuTe BpeM9l Pab0Tld: ";  cin >> timeToWorked;
              cout << "BBeDuTe KoJl-BO CTAHKOB: "; cin >> countMachine;
              
              modeMachine = new int [countMachine];
              timeToEndWork = new int [countMachine];             
              countDetail = new int [countMachine];
              
              for(int i = 0; i < countMachine; i++)
                  {
                      timeToEndWork[i] = timeToWorked;
                      countDetail[i] = 0;
                      modeMachine[i] = 0;
                  }
          }
          ~GroupMachine()
          {
              delete [] modeMachine; modeMachine = NULL;
              delete [] timeToEndWork; timeToEndWork = NULL;
              delete [] countDetail; countDetail = NULL;
              
          }
        int* zad(int queueMachine)   
            { 
                if(kbhit()) 
                 if(getch()==27)
                    return 0;
                    
                for(int i=0;i<countMachine;i++)
                 {
                     if((modeMachine[i] == 0) && (queueMachine > 0)) 
                         modeMachine[i] = 1;
                     if((timeToEndWork[i] >= 0) && (modeMachine[i] == 1))
                         timeToEndWork[i]--;
                     if(timeToEndWork[i] == -1)
                     {
                        timeToEndWork[i] = timeToWorked;
                        countDetail[i]++;
                        modeMachine[i]=0;
                     }
                        
                      cout << endl << "Vrem'a do konca robotu= " << 
                      timeToEndWork[i] << endl << "rejim rabotu - " << 
                      modeMachine[i] << endl << "Kol-vo obrabotanuh detalei = " << 
                      countDetail[i] << endl << queueMachine << endl;
                     
                 }
                return modeMachine;
            }
        int getmodeMachine()
        {
            modeMachine;return *modeMachine;
        }
 };
 
void main()
 {
     int *test;
     int qq;                        //qq - переменная для счета времени
     int *QueueMachine;             //QueueMachine - массив с очередями деталей перед каждой группой станков
     int *temp;                 //temp - создал массив для передачи состояний станков в основную программу
     QueueMachine=new int [5];   
     temp=new int [4];     
     GroupMachine *y=new GroupMachine[4];
     time_t tm1;
     tm1 = time (NULL);
     qq=tm1;
     for(int i=0; i<4;i++)
        QueueMachine[i]=0;
     QueueMachine[0]=999999;  // перед первой группой станков очередь бесконечная
        for(;;)
            {
                system("cls");
                for(int i=0;i<4;i++)
                {
                    (y+i)->zad(int (QueueMachine[i]));
                    for (int i = 0; i < 4; ++i)
                    {temp[i] = y[i].getmodeMachine();cout<<temp[i];}
 
                    if((temp[i]==0)&&(QueueMachine[i]>0))
                        {
                            QueueMachine[i+1]++; QueueMachine[i]--;
                        }
                }
             do
                {
                    tm1 = time (NULL);
                    if(kbhit()) 
                    if(getch()==27)
                    {
                        delete []y;
                        return;
                    }
                }
                    while(qq==tm1);
                    qq=tm1;
             
                  
 
            }
 }
вот так
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru