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

Как сделать очередь и убрать паузу программы при вводе данных? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строки. Найти и удалить последнее слово, являющееся палиндромом http://www.cyberforum.ru/cpp-beginners/thread1033211.html
Помогите с задачей: Дана строка, состоящая из одного или нескольких слов, отделённых друг от друга одним пробелом. Найти и удалить последнее слово, являющееся палиндромом. Не могу понять вообще...
C++ Удаление из массива повторяющихся элементов Это первый пункт задачи: Используя генератор случайных чисел, заполнить массив из 20 элементов целочисленными значениями в диапазоне , сумма цифр которых меньше 7. Прототип пользовательской... http://www.cyberforum.ru/cpp-beginners/thread1033196.html
Создать иерархию классов, простейший футбольный турнир C++
класс FootballClub - клуб, принимающий участие в турнире: название; город; год основания; рейтинг (целое число от 1 до 5); класс Match - матч в рамках турнира: принимающий и гостевой клубы;...
C++ Не воспринимает проверку
#include "stdafx.h" #include "stdio.h" #include "string" #include "conio.h" #define NMAX 4 void vvod(double m, char name) { int i,j,k; double buf=0;
C++ Программа по указателям http://www.cyberforum.ru/cpp-beginners/thread1033155.html
Вывести на консоль у виде таблицы значений чисел у десятиричному и 16ричному формате и их адрес у оперативной памяти для типов int, float, double, char, bool, long. Представить те самые числа у виде...
C++ синтаксис Только начали изучать С++. До этого писали на Pascal в Lazarus и Delphi. Подскажите, пожалуйста, как правильно задать промежуток в C++, например, '0'..'9'?. подробнее

Показать сообщение отдельно
Delacroic
0 / 0 / 0
Регистрация: 04.12.2013
Сообщений: 61

Как сделать очередь и убрать паузу программы при вводе данных? - C++

08.12.2013, 16:33. Просмотров 414. Ответов 5
Метки (Все метки)

Написал прогу, при вводе новый параметров детали программа останавливается, как можно переделать, что бы этого не было? И как сделать очередь из вводимых данных? я пытался сделать через массив, но не получилось=\
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
131
#include "stdafx.h"
#include <iostream>
#include <Windows.h>
#include <time.h>
#include <ctime>
#include <tchar.h>
#include <conio.h>
#include <sstream>
#include <locale.h>
#include <string>
#include <dos.h>
 
using namespace std;
class machine
{
            private:
                    int TimeMachine;        //Время работы станка
                    int KoefOthMachine;     //Коэффициент отходов станка
                    int Obrabotano;         //Кол-во обработанных деталей
                    int LocalOthod;         //Сумма отходов с одного станка
                    int a;
                    int SaveTime;
            public:
                    machine()
                    {   Obrabotano=0;
                        LocalOthod=0;
                        TimeMachine=rand()%10+5;
                        SaveTime=TimeMachine;
                        KoefOthMachine=rand()%10+1;
                        cout<<TimeMachine<<endl<<KoefOthMachine<<endl;
                    }
            void work(int &Ochered, int KoefOthDet, int KoefTimeDet,int &RejimMachine,int &Othod)
                {
                    a=0;
                    if(RejimMachine==1)
                        TimeMachine--;
                    if((RejimMachine==0)&&(Ochered>0))
                        {
                            Ochered--;
                            RejimMachine=1;
                            Othod+=KoefOthMachine*KoefOthDet;
                            TimeMachine*=KoefTimeDet;
                            LocalOthod+=KoefOthMachine*KoefOthDet;
                            Obrabotano++;
                            a++;
                        }
                    
                    if(TimeMachine==0)
                        {
                            RejimMachine=0;
                            TimeMachine=SaveTime;
                        }
                    cout<<"Время до конца обработки "<<TimeMachine<<endl<<
                    "Кол-во отходов"<<LocalOthod<<endl;
                    
 
                }
            int retra()
            {
                return a;
            }
};
 
 
 
void main()
    {
        int **koef;
        koef=new int *[100];
        for(int i=0;i<100;i++)
        {
            koef[i]=new int [2];
            for(int j=0;j<2;j++)
                koef[i][j]=0;
        }
 
        int Ocheredd=0;                 //Количество деталей в очереди
        int* RejimMachinee;             //Массив с режимами работы всех станков
        int Othodd=0;                   //Общее кол-во отходов
        int qq;
        RejimMachinee=new int[8];                   
        machine *y=new machine [8];
        setlocale(0,"Rus");
        time_t tm1;
        tm1 = time (NULL);
        qq=tm1;
        for(int i=0;i<8;i++)
            RejimMachinee[i]=0;
        for(;;)
        {
            system("cls");
            for(int i=0;i<8;i++)
            {
                (y+i)->work(Ocheredd,koef[0][1],koef[0][0],RejimMachinee[i],Othodd);
                if((y[i].retra()>0)&&(Ocheredd>0))
                {
                    for(int i=0;i<99;i++)
                    {
                        for(int j=0;j<2;j++)
                        {
                            koef[i][j]=koef[i+1][j+1];
                        }
                    }
                    
                }
                    
                
            }
 
            
             do
                {
                    tm1 = time (NULL);
                    if(kbhit()) 
                    if(getch()==27)
                    {
                        return;
                    }   
                    if(kbhit()) 
                    if(getch()==13)
                    {
                        cout<<"Введите коэффициенты новой детали: "<<endl<<
                        "времени: ";cin>>koef[Ocheredd][0];
                        cout<<"отходов: ";cin>>koef[Ocheredd][1];
                        Ocheredd++;
                    }   
                }
                    while(qq==tm1);
                    qq=tm1;
        }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru