@@ -222,8 +222,10 @@ System::Void ModelingSystemInfiniteQueue::ModelingInfinityQeueForm::Btn_exectuio
222222 double timeBeforeNextTask = getRandom_uniformRealDistribution (startInterrvalGetTask, endInteervalGetTask);
223223 double currentTime = 0 ;
224224 totalTimeWork = 0 ;
225+
225226 int middleCountPCWorking = 0 ;
226227 ModelingSystemInfinityQueuePC* PCs[3 ] = { &PC_2, &PC_3, &PC_1 };
228+ // double lambda = 0;
227229 while (true )
228230 {
229231 if (currentTime >= timeBeforeNextTask && countTask > 0 )
@@ -232,6 +234,7 @@ System::Void ModelingSystemInfiniteQueue::ModelingInfinityQeueForm::Btn_exectuio
232234 // totalTimeReceiptsTasks += timeBeforeNextTask;
233235 timeBeforeNextTask = std::round (getRandom_uniformRealDistribution (startInterrvalGetTask, endInteervalGetTask));
234236 currentTime = 0 ;
237+ // lambda += timeBeforeNextTask;
235238 }
236239 PC_1.computitionPC (PCs);
237240 PC_2.computitionPC (NULL );
@@ -253,7 +256,7 @@ System::Void ModelingSystemInfiniteQueue::ModelingInfinityQeueForm::Btn_exectuio
253256 countTaskInQueueAfterGetAllTaskFirstPC = PC_1.listTimeExecutionTasksPC .size ();
254257 countTaskInQueueAfterGetAllTaskSecondPC = PC_2.listTimeExecutionTasksPC .size ();
255258 countTaskInQueueAfterGetAllTaskThirdPC = PC_3.listTimeExecutionTasksPC .size ();
256- break ;
259+ break ;// Óäàëèòü, åñëè íàäî ïðîäîëæèòü ðàáîòó ïîñëå ïîëó÷åíèå âñåõ çàäà÷
257260 }
258261
259262 totalTimeWork++;
@@ -272,8 +275,10 @@ System::Void ModelingSystemInfiniteQueue::ModelingInfinityQeueForm::Btn_exectuio
272275 int maxTimeQueuePC = std::max (PC_1.getMaxTimeQueuePC (), std::max (PC_2.getMaxTimeQueuePC (), PC_3.getMaxTimeQueuePC ()));
273276 int maxTimeWaitPC = std::max (PC_1.getTotalTimeWaitPC (), std::max (PC_2.getTotalTimeWaitPC (), PC_3.getTotalTimeWaitPC ()));
274277
278+ int middleQueue = 0 ;
279+ if ((PC_1.getCountQueuePC () + PC_2.getCountQueuePC () + PC_3.getCountQueuePC ()) != 0 )
280+ middleQueue =(PC_1.getTotalTimeWaitPC () + PC_3.getTotalTimeWaitPC () + PC_3.getTotalTimeWaitPC ()) / (PC_1.getCountQueuePC ()+ PC_2.getCountQueuePC () + PC_3.getCountQueuePC ());
275281
276- int middleQueue =(PC_1.getTotalTimeWaitPC () + PC_3.getTotalTimeWaitPC () + PC_3.getTotalTimeWaitPC ()) / (PC_1.getCountQueuePC ()+ PC_2.getCountQueuePC () + PC_3.getCountQueuePC ());
277282 int middleWait = (PC_1.getTotalTimeWaitPC () + PC_3.getTotalTimeWaitPC () + PC_3.getTotalTimeWaitPC ())/ 3 ;
278283
279284 double middleBusyTime = (PC_1.getTotalTimeExectuionTasksPC () + PC_2.getTotalTimeExectuionTasksPC () + PC_3.getTotalTimeExectuionTasksPC ()) / 3.0 ;
@@ -287,7 +292,10 @@ System::Void ModelingSystemInfiniteQueue::ModelingInfinityQeueForm::Btn_exectuio
287292 lbl_total->Text += " \n Ìàêñ âðåìÿ î÷åðåäè îäíîé èç ÝÂÌ: " + ((maxTimeQueuePC) / 60 ).ToString () + " ÷. " + ((maxTimeQueuePC) % 60 ).ToString () + " ìèí." ;
288293 lbl_total->Text += " \n Ìàêñ âðåìÿ ïðîñòîÿ îäíîé èç ÝÂÌ: " + ((maxTimeWaitPC) / 60 ).ToString () + " ÷. " + ((maxTimeWaitPC) % 60 ).ToString () + " ìèí." ;
289294
290- lbl_total->Text += " \n Àáñîëþòíàÿ ïðîïóñêíàÿ ñïîñîáíîñòü: " + (PC_1.getTimeExectuinOneTask () + PC_2.getTimeExectuinOneTask () + PC_3.getTimeExectuinOneTask () / 3 ) + " \n " ;
295+ // (lambda / Convert::ToInt32(numericUpDown1->Text))
296+ //
297+ // ((PC_1.getTimeExectuinOneTask() + PC_2.getTimeExectuinOneTask() + PC_3.getTimeExectuinOneTask()) / 3)
298+ lbl_total->Text += " \n Àáñîëþòíàÿ ïðîïóñêíàÿ ñïîñîáíîñòü: " + ((PC_1.getTimeExectuinOneTask () + PC_2.getTimeExectuinOneTask () + PC_3.getTimeExectuinOneTask ()) / 3 ) + " \n " ;
291299
292300 lbl_total->Text += " \n Êðàòêàÿ ñâîäêà îá ýôôåêòèâíîñòè:\n ---\n " ;
293301 if (middleQueue > totalTimeWork * 0.3 )
0 commit comments