資源簡介
問題描述:假設只有一位醫生,在一段時間內隨機地來幾位病人;假設病人到達的時間間隔為0~14分鐘之間的某個隨機值,每個病人所需處理時間為1~9分鐘之間的某個隨機值。試用隊列結構進行模擬。
幫朋友寫的,用VC++模擬實現,本來想完全用類實現,但要求中要用隊列,所以加上了隊列結構。使用2個線程模擬醫生處理病人事件和病人到達診所事件。因看了論壇原來的資源需要2分,覺得自己的比那個花的工夫多,而且也更好看點,咱咋也不能比他差吧,另外自己下載資源也老不夠分,見諒見諒...貼上數據結構定義部分:
class Patient
{
public:
int arrive_time;
public:
Patient();
virtual ~Patient();
void arrive(int );//添加節點
};
class Doctor
{
public:
int treat_time;
int wait_time;
public:
Doctor();
virtual ~Doctor();
void treat();//產生隨機數
void complete();//刪除節點
};
struct node
{
int arrive_time;
int wait_time;
int treat_time;
};
typedef struct t_queue
{
node data;
struct t_queue *link;
}queue,*pqueue;

代碼片段和文件信息
//?ClinicEmulate.cpp?:?Defines?the?class?behaviors?for?the?application.
//
#include?“stdafx.h“
#include?“ClinicEmulate.h“
#include?“ClinicEmulateDlg.h“
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#undef?THIS_FILE
static?char?THIS_FILE[]?=?__FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
//?CClinicEmulateApp
BEGIN_MESSAGE_MAP(CClinicEmulateApp?CWinApp)
//{{AFX_MSG_MAP(CClinicEmulateApp)
//?NOTE?-?the?ClassWizard?will?add?and?remove?mapping?macros?here.
//????DO?NOT?EDIT?what?you?see?in?these?blocks?of?generated?code!
//}}AFX_MSG
ON_COMMAND(ID_HELP?CWinApp::onhelp)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
//?CClinicEmulateApp?construction
CClinicEmulateApp::CClinicEmulateApp()
{
//?TODO:?add?construction?code?here
//?Place?all?significant?initialization?in?InitInstance
}
/////////////////////////////////////////////////////////////////////////////
//?The?one?and?only?CClinicEmulateApp?object
CClinicEmulateApp?theApp;
/////////////////////////////////////////////////////////////////////////////
//?CClinicEmulateApp?initialization
BOOL?CClinicEmulateApp::InitInstance()
{
AfxEnableControlContainer();
//?Standard?initialization
//?If?you?are?not?using?these?features?and?wish?to?reduce?the?size
//??of?your?final?executable?you?should?remove?from?the?following
//??the?specific?initialization?routines?you?do?not?need.
#ifdef?_AFXDLL
Enable3dControls(); //?Call?this?when?using?MFC?in?a?shared?DLL
#else
Enable3dControlsStatic(); //?Call?this?when?linking?to?MFC?statically
#endif
CClinicEmulateDlg?dlg;
m_pMainWnd?=?&dlg;
int?nResponse?=?dlg.DoModal();
if?(nResponse?==?IDOK)
{
//?TODO:?Place?code?here?to?handle?when?the?dialog?is
//??dismissed?with?OK
}
else?if?(nResponse?==?IDCANCEL)
{
//?TODO:?Place?code?here?to?handle?when?the?dialog?is
//??dismissed?with?Cancel
}
//?Since?the?dialog?has?been?closed?return?FALSE?so?that?we?exit?the
//??application?rather?than?start?the?application‘s?message?pump.
return?FALSE;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????36520??2010-08-11?15:12??ClinicEmulate\ClinicEmulate.aps
?????文件???????1446??2010-08-11?15:24??ClinicEmulate\ClinicEmulate.clw
?????文件???????2161??2010-07-14?21:09??ClinicEmulate\ClinicEmulate.cpp
?????文件???????4328??2010-07-14?21:16??ClinicEmulate\ClinicEmulate.dsp
?????文件????????549??2010-07-14?21:09??ClinicEmulate\ClinicEmulate.dsw
?????文件???????1401??2010-07-14?21:09??ClinicEmulate\ClinicEmulate.h
?????文件??????91136??2010-08-11?15:24??ClinicEmulate\ClinicEmulate.ncb
?????文件??????93184??2010-08-11?15:24??ClinicEmulate\ClinicEmulate.opt
?????文件???????1581??2010-08-11?15:23??ClinicEmulate\ClinicEmulate.plg
?????文件???????5903??2010-08-11?15:12??ClinicEmulate\ClinicEmulate.rc
?????文件???????9120??2010-08-11?15:13??ClinicEmulate\ClinicEmulateDlg.cpp
?????文件???????1533??2010-07-16?15:25??ClinicEmulate\ClinicEmulateDlg.h
?????文件?????114760??2010-08-11?15:23??ClinicEmulate\Debug\ClinicEmulate.exe
?????文件?????219388??2010-08-11?15:23??ClinicEmulate\Debug\ClinicEmulate.ilk
?????文件??????23961??2010-08-11?15:23??ClinicEmulate\Debug\ClinicEmulate.obj
?????文件????5229524??2010-08-11?15:23??ClinicEmulate\Debug\ClinicEmulate.pch
?????文件?????271360??2010-08-11?15:23??ClinicEmulate\Debug\ClinicEmulate.pdb
?????文件???????2868??2010-08-11?15:23??ClinicEmulate\Debug\ClinicEmulate.res
?????文件??????49183??2010-08-11?15:23??ClinicEmulate\Debug\ClinicEmulateDlg.obj
?????文件??????18252??2010-08-11?15:23??ClinicEmulate\Debug\Person.obj
?????文件??????11634??2010-08-11?15:23??ClinicEmulate\Debug\StdAfx.obj
?????文件?????205824??2010-08-11?15:23??ClinicEmulate\Debug\vc60.idb
?????文件??????77824??2010-08-11?15:23??ClinicEmulate\Debug\vc60.pdb
?????文件???????1561??2010-07-16?22:13??ClinicEmulate\Person.cpp
?????文件????????884??2010-07-15?10:19??ClinicEmulate\Person.h
?????文件???????3705??2010-07-14?21:09??ClinicEmulate\ReadMe.txt
?????文件???????1078??2010-07-14?21:09??ClinicEmulate\res\ClinicEmulate.ico
?????文件????????405??2010-07-14?21:09??ClinicEmulate\res\ClinicEmulate.rc2
?????文件???????1151??2010-07-16?15:01??ClinicEmulate\resource.h
?????文件????????215??2010-07-14?21:09??ClinicEmulate\StdAfx.cpp
............此處省略7個文件信息
- 上一篇:C++ 藥品管理系統
- 下一篇:數據結構與程序設計--C++描述影印版
評論
共有 條評論