Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Моделювання роботи порту

Реферат Моделювання роботи порту





rival (Tanker * t) {i;

// Перевіряємо, чи є вільний термінал = FirstAvail (); (i! = -1)// є, стразу ставимо танкер на навантаження

{[i] = t; _serve [i] = get_uniform (t-> median, t-> offset); [i] -> state = 5;

}// ні, ставимо танкер в чергу

{_length + +; * ptr = new ListNode (t, NULL); (queue == NULL) queue = ptr; ListAdd (queue, ptr);> ; state = 4;

}

}

Port :: Complete (int i) {

// Відправляємо завантажений танкер до буксира

((Tug *) t) -> Arrival_coast (serving [i]); _serve [i] = -1; [i] = NULL; (queue == NULL) return;

// Черга не порожня, ставимо на звільнився термінал новий танкер [i] = queue-> Data (); _serve [i] = get_uniform (serving [i] -> median, serving [ i] -> offset); [i] -> state = 5; = queue-> Next (); _length -;

}

Port :: run () {k;

// Перевірка завершення обслуговування і інкремент часу перебування для всіх// танкерів, що знаходяться під контролем порту (int i = 0; i 0) { serving [i] -> minutes + +; to_serve [i] -;} (to_serve [i] == 0) Complete (i);

} * ptr = queue; (ptr! = NULL) {> Data () -> minutes + +; = ptr-> Next ();

}

// Запис статистики - 1 раз на годину ((total +1)% 60 == 0) {= (total +1)/60; (q_loading, "% d n",

}

}

Port :: Print () {("У черзі на навантаження знаходяться% d танкерів n", q_length); ("Зайняті вантаженням% d терміналів n", Busy ()); (int i = 0; i type);

}

Port :: FirstAvail () {(int i = 0; i

}

Port :: Busy ()// обчислення поточного кількості зайнятих терміналів

{k = 0; (int i = 0; i

}

Port :: putTug (Tug * a) {= a;

}

Лістинг програми файл random.h


# include

# include

# include get_exp (float mu) {

// генератор випадкових чисел, розподілених

// експоненціальноr_num; float root, right; _num = rand ();// отримання випадкового целогочісла = ((float) r_num)/(RAND_MAX +1);// проекція на інтервал (0; 1) =-log (1-right)/mu;// обчислення значення зворотної функції (root);

}

get_uniform (int a, int b...


Назад | сторінка 14 з 19 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Підводний танкер
  • Реферат на тему: Оптимізація схеми навантаження річкового порту
  • Реферат на тему: Основні показники роботи порту та виробничого перевантажувального комплексу ...
  • Реферат на тему: Florida state university
  • Реферат на тему: The state apparatus of Ukraine