fork download
  1. SIMULATE
  2.  
  3. * Модель банка с 4 кабинетами и 3 очередями
  4.  
  5. * Определение очередей
  6. QUEUE Q1 * Очередь 1
  7. QUEUE Q2 * Очередь 2
  8. QUEUE Q3 * Очередь 3
  9.  
  10. * Определение кабинетов (4 кабинета)
  11. STORAGE S1,4 * 4 единицы ресурса (кабинеты)
  12.  
  13. * Таблицы для сбора статистики
  14. QTABLES Q1,20,1,20 * Таблица для очереди 1 (макс 20 клиентов)
  15. QTABLES Q2,20,1,20 * Таблица для очереди 2
  16. QTABLES Q3,20,1,20 * Таблица для очереди 3
  17.  
  18. GENERATE 10.5,2.5 * Клиенты приходят в среднем каждые 10.5±2.5 минут (8-13)
  19. *
  20. * Распределение клиентов по очередям (33% - Q1, 33% - Q2, 34% - Q3)
  21. *
  22. TRANSFER 0.333,Q1LINE,,Q2LINE
  23.  
  24. Q1LINE QUEUE Q1 * Вход в очередь 1
  25. TABLE Q1TIME,0,5,20 * Таблица времени в очереди 1
  26. MARK TIME1 * Начало отсчета времени в очереди
  27. SEIZE S1 * Захват свободного кабинета
  28. DEPART Q1 * Выход из очереди 1
  29. TABULATE Q1TIME * Фиксация времени в очереди 1
  30. ADVANCE 14,4 * Обслуживание 14±4 минут (10-18)
  31. RELEASE S1 * Освобождение кабинета
  32. TERMINATE * Клиент уходит
  33.  
  34. Q2LINE QUEUE Q2 * Вход в очередь 2
  35. TABLE Q2TIME,0,5,20 * Таблица времени в очереди 2
  36. MARK TIME2 * Начало отсчета времени в очереди
  37. SEIZE S1 * Захват свободного кабинета
  38. DEPART Q2 * Выход из очереди 2
  39. TABULATE Q2TIME * Фиксация времени в очереди 2
  40. ADVANCE 14,4 * Обслуживание 14±4 минут (10-18)
  41. RELEASE S1 * Освобождение кабинета
  42. TERMINATE * Клиент уходит
  43.  
  44. Q3LINE QUEUE Q3 * Вход в очередь 3
  45. TABLE Q3TIME,0,5,20 * Таблица времени в очереди 3
  46. MARK TIME3 * Начало отсчета времени в очереди
  47. SEIZE S1 * Захват свободного кабинета
  48. DEPART Q3 * Выход из очереди 3
  49. TABULATE Q3TIME * Фиксация времени в очереди 3
  50. ADVANCE 14,4 * Обслуживание 14±4 минут (10-18)
  51. RELEASE S1 * Освобождение кабинета
  52. TERMINATE * Клиент уходит
  53.  
  54. * Запуск симуляции на 1000 минут
  55. START 1000
  56.  
  57. * Вывод статистики
  58. PRINT 'Средняя длина очереди Q1:',Q1$AVERAGE
  59. PRINT 'Максимальная длина очереди Q1:',Q1$MAXIMUM
  60. PRINT 'Среднее время в очереди Q1:',Q1TIME$AVERAGE
  61. PRINT 'Максимальное время в очереди Q1:',Q1TIME$MAXIMUM
  62.  
  63. PRINT 'Средняя длина очереди Q2:',Q2$AVERAGE
  64. PRINT 'Максимальная длина очереди Q2:',Q2$MAXIMUM
  65. PRINT 'Среднее время в очереди Q2:',Q2TIME$AVERAGE
  66. PRINT 'Максимальное время в очереди Q2:',Q2TIME$MAXIMUM
  67.  
  68. PRINT 'Средняя длина очереди Q3:',Q3$AVERAGE
  69. PRINT 'Максимальная длина очереди Q3:',Q3$MAXIMUM
  70. PRINT 'Среднее время в очереди Q3:',Q3TIME$AVERAGE
  71. PRINT 'Максимальное время в очереди Q3:',Q3TIME$MAXIMUM
  72.  
  73. END
Success #stdin #stdout #stderr 0.01s 5332KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Error: near line 1: near "SIMULATE": syntax error