p.getDestination ()) break; -;
} _off.AddToLine (tmp);
}
// функція з'ясування появи клієнта
// як параметр передається середній час між появою клієнтів (у хвилинах) Client_arrival (Time curr, int num)
{rnd = new Random (); t = rnd.Next (num) + 1; _arrival.CopyTime (curr); _arrival.PlusMin (t);
}
// обслуговування кліентаvoid Service (ticket_office off, client _client, Time curr)
{t = SearchCity (_client.getDestination ()) ;//шукаємо потрібний городyes = false ;//продаж білетаtmp_r, ttmp_r; tmp_time = new Time (); r = t. getListRun (); _r = (Run) r.ToArray (). GetValue (0); tmp2; _time.CopyTime (ttmp_r.getDepartureTime ()); (int i = 0; i
{_r = (Run) r.ToArray (). GetValue (i); = tmp_r.getDepartureTime (); (! yes) _time.CopyTime (tmp2); ((curr = tmp2) && (tmp2> = curr) && (tmp_r.getCountTicket ()! = 0))
{_time.CopyTime (tmp2); _r = (Run) r.ToArray (). GetValue (i); = true;
}
} (! yes | | tmp_time == curr)// якщо немає квитків або рейсів
{. setCountClient () ;//збільшуємо кількість обслужених клієнтів
}
{. setCountClient () ;//збільшуємо кількість обслужених кліентов.setCountTicket () ;//збільшуємо кількість проданих на касі білетов.setCountTicket () ;////збільшуємо кількість проданих квитків на певний город_r. setCountTicket () ;//зменшуємо кількість залишилися квитків на певний рейс
_client.setDepartureTime (tmp_time) ;//встановлюємо час відправлення клієнта
}
}
// функція зменшує час очікування всіх кліетнов на 1 хвилину
// використовується в циклі моделірованіяvoid SetTimeAll ()
{_office t; (int i = 0; i
{= (ticket_office) service.ToArray (). GetValue (i);. SetTime ();
}
}
// ініціалізація кас за напрямами, створення міст, рейсовvoid Init_Service ()
{run_time = new Time () ;//час відправки рейсаrun = new Run (); ("Томська область"); ("Томська область", "Томськ"); _time. setTime (10, 0);. setRun (40, run_time); ("Томськ", run); _time.setTime (12, 30);. setRun (40, run_time); ("Томськ", run); _time.setTime (16, 50);. setRun (40, run_time); ("Томськ", run); ("Томська область", "Асино"); _time.setTime (9, 30);. setRun (40, run_time); ("Асино", run); _time.setTime (16, 10);. setRun (40, run_time); ("Асино", run); _time.setTime (18, 50); . setRun (40, run_time); ("Асино", run); ("Томська область", "Стрежевой"); _time.setTime (7, 30...