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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Строки. Найти и удалить последнее слово, являющееся палиндромом http://www.cyberforum.ru/cpp-beginners/thread1033211.html
Помогите с задачей: Дана строка, состоящая из одного или нескольких слов, отделённых друг от друга одним пробелом. Найти и удалить последнее слово, являющееся палиндромом. Не могу понять вообще как делать, но логика такова, я беру последний элемент и проверяю не является ли он пробелом и так до первого пробела, что бы выделить 1 последнее слово. Запишу это слово в строку и анализирую...
C++ Удаление из массива повторяющихся элементов Это первый пункт задачи: Используя генератор случайных чисел, заполнить массив из 20 элементов целочисленными значениями в диапазоне , сумма цифр которых меньше 7. Прототип пользовательской функции: int genprint(int*, const int, const int, const int); параметры функции: массив, число элементов массива, левая и правая границы интервала случайных чисел, верхняя граница суммы чисел. Функция... 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
08.12.2013, 16:33     Как сделать очередь и убрать паузу программы при вводе данных?
Написал прогу, при вводе новый параметров детали программа останавливается, как можно переделать, что бы этого не было? И как сделать очередь из вводимых данных? я пытался сделать через массив, но не получилось=\
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;
        }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru