理髮館模擬系統實驗報告

2023-01-14 14:15:06 字數 2417 閱讀 7445

一、問題描述

理髮館一天的工作過程如下:

1) 理髮館有n把理髮椅,可同時為n位顧客進行理髮。

2) 理髮師分三個等級(一級、二級、**),對應不同的服務收費。

3) 當顧客進門時,需選擇某級別理髮師,只要該級別的理髮師有空椅,則可立即坐下理髮,否則需排隊等候。

4) 一旦該級別的理髮師有顧客理髮完離去,排在隊頭的顧客便可開始理髮。

5) 若理髮館每天連續營業t分鐘,求

(1) 一天內顧客在理髮館內的平均逗留時間;

(2) 顧客排隊等候理髮的佇列長度平均值;

(3) 營業時間到點後仍需完成服務的收尾工作時間;

(4) 統計每天的營業額;

(5) 統計每天不同級別理髮師的創收。

[ 基本要求 ] :

1) 模擬理髮館一天的工作過程:必須採用事件驅動的離散模型(參考教科書3.5節離散事件模擬p65);

2) 每個顧客到達和下一顧客到達時間的間隔應是隨機的;

3) 理髮師編號、理髮師級別和每天的營業時間由使用者輸入;

4) 某顧客挑選某乙個級別的理髮師而不得時,選第乙個佇列排隊等待 ;

5) 每個顧客進門時將生成三個隨機數:

durtime:進門顧客理髮所需服務時間(簡稱:理髮時間);

intertime:下一顧客將到達的時間間隔(簡稱:間隔時間);

select:服務選項 。

6) 服務收費:應包含服務時間和理髮師級別兩個因素。

7) 除了輸出統計的資料外,還需要顯示理髮館的狀態,可以採用文字方式(橫向顯示每張椅編號、理髮師級別。縱向表示等待該理髮師理髮的排隊長度)。

[ 測試資料 ] :使用者輸入每位理髮師編號、級別號和營業的時間,結合隨機數進行測試。

[ 實現提示 ]

1) 顧客進門和出門這兩個時刻發生的事情稱「事件」,按事件的先後次序逐個處理事件的工作方式稱「事件驅動模擬」。離散事件驅動模型的特點是只關注和刻畫事物的狀態變化(即事件),不關心變化的過渡過程。模型靠每乙個事件引發其它事件的方式來維持運轉。

每個事件都有發生時間,模型的運轉實際就是按事件發生時間順序逐個處理事件,'處理'將產生新的事件。因此,建模的關鍵就是全面分析事物的主要特點,抽象出幾種能反映本質的事件和它們之間的驅動關係。系統時間就是當前事件的事件發生時間,它不是等間隔變化而是跳躍變化的。

2) 資料結構:本題設計兩個抽象資料型別

● 佇列抽象資料型別:登入排隊等候理髮的顧客情況。每個元素應包括顧客進門時刻、理髮師級別、理髮所需時間。n把椅子對應n個佇列。

● 事件鍊錶抽象資料型別:登入顧客進門事件、出門事件。每個事件應包括事件型別(進門事件型別為0,出門事件型別按n把椅子所排隊列分為為1、2、...

n)和事件發生的時刻occurtime。為便於按事件發生先後順序逐一處理事件,事件表應按「時刻」有序。

3) 對理髮椅需要進行編號,使不同級別的理髮師與編號的理髮椅相對應。

二、系統簡介

2.1開發環境:codeblocks 12.11;

2.2利用基礎資料結構來完成對理髮館經營狀況的模擬

2.3 整個系統共分為3個檔案,分別為主檔案配置檔案以及程式執行後產生的統計資訊檔案

三、總體設計(模組框架圖)

5、使用說明

使用前請先使用excel**配置根據每個引數的填寫要求填寫

填寫完成後,開啟主檔案即可開始模擬理髮館經營狀況

模擬完成後,系統會生成檔案,即理髮館經營狀況的檔案

6、源程式

##include

#include

#include

#include

using namespace std;

int nowtime,cusnum[4];

char barbername[4][100][10];

struct settings

setting;

struct answers

answer;

typedef struct

event;

typedef struct

custom;

bool operator<(const event& a,const event& b)

priority_queue elist;

queue barber[4][100];

void show()

void showstatus(int t,int type,int kk,int ii,char *name)

printfn");

printf("\nn");

printf("二級服務區理髮師共%d位,顧客共%d位\n",

for(int i=0;i<

printfn");

printf("\nn");

printf("**服務區理髮師共%d位,顧客共%d位\n",

for(int i=0;i<

printfn\n");

採暖系統模擬演示實驗報告

一 實驗目的 1 了解常見的熱水採暖系統形式。2 掌握系統中各部件的作用及連線方式。二 實驗裝置及實驗裝置 圖1 採暖演示系統示意圖 圖2 採暖系統模擬實驗台實物 三 實驗步驟 1 系統工作前將水充滿給水箱 2.開啟水箱下的閥門b和鍋爐後的閥門c,然後啟動水幫浦向系統充水。充水時不斷地開關集氣罐放氣...

電子商務模擬系統操作實驗報告

浙江科技學院 實驗報告 2013年 11月 22日 目錄一 實驗專案名稱 1 二 實驗目的和要求 1 2.1實驗目的 1 2.2實驗要求 1 三 實驗內容和程序 1 3.1實驗內容 1 3.2實驗程序 1 四 主要儀器裝置 2 4.1硬體環境 2 4.2軟體環境 2 五 操作方法與實驗步驟 2 5....

模擬外匯實驗報告

姓名 學號 專業 學院 實驗報告 1 交易記錄 2 交易情況 初始帳戶資金 20000 美元 最終帳戶資金 19965.3 美元 總盈虧狀況 虧損 34.7 美元 收益率 0.173 從大體上看,美元 人民幣在一段時間的下降後,有了一點穩定回公升之態,我認為其會繼續 所以買進,並且目前的巨集觀方向來...