public Modeling(int NOC, int NOB, int MidC) { _Idling = 0; SlowPackage = 0; TimeSlowPackage = 0; MidCourier = MidC; NumberOfCourier = NOC; NumberOfBranch = NOB; Branches = new List <Branch>(); Couriers = new List <Courier>(); Time = new TIME(); Packages = new List <Package>(); NumberOfPackages = 0; //Инициализация Филиалов for (int i = 0; i < NOB; i++) { Branches.Add(new Branch(i)); } //Инициализация Курьеров for (int i = 0; i < NOC; i++) { Couriers.Add(new Courier(i, Modeling.rand.Next(NOB))); } }
public Courier(int N, int Br) { _Name = N; _Branch = Br; Roster = new List <Package>(); Freedom = true; time = new TIME(); }
public static TIME operator +(TIME T1, int T2) { TIME T3 = new TIME(); T3.minute = T1.minute + T2; T3.hour = T1.hour; while (T3.minute > 59) { T3.hour++; T3.minute -= 60; } return(T3); }
public Package(int _ID, int _NumberOfBranch, int MinUrgency, int MaxUrgency) { time = new TIME(); DeadLine = new TIME(); _id = _ID; do { //генерация пункта отправки и пункта назначения _Departure = Package.rand.Next(_NumberOfBranch); _Destination = Package.rand.Next(_NumberOfBranch); }while (_Departure == _Destination); //генерация срочности заявки _Urgency = Package.rand.Next(MinUrgency, MaxUrgency); }