목차
[BFS]
[binary search tree]
[equivalence]
[hanoi]
[HEAP]
[infix_to_postfix]
[kruskal]
[LINKLIST]
[machine]
[magic_square]
[Maze Searching Algorithm]
[postfix]
[QUEUE]
[Recursive call]
[STACK]
[TREE]
[기타]
[다단계 합병 프로그램]
[다항식]
[바퀴]
[비트연산]
234KB
파일 54, 폴더 21
elevator.hwp
[binary search tree]
[equivalence]
[hanoi]
[HEAP]
[infix_to_postfix]
[kruskal]
[LINKLIST]
[machine]
[magic_square]
[Maze Searching Algorithm]
[postfix]
[QUEUE]
[Recursive call]
[STACK]
[TREE]
[기타]
[다단계 합병 프로그램]
[다항식]
[바퀴]
[비트연산]
234KB
파일 54, 폴더 21
elevator.hwp
본문내용
elevator.hwp
//building.h
//Definition for class Building.
#ifndef BUILDING_H
#define BUILDING_H
#include \"elevator.h\"
#include \"floor.h\"
#include \"clock.h\"
#include \"scheduler.h\"
class Building{
public:
Building(); //constructor
~Building(); //destructor
void runSimulation(int); //run simulation for specified time
private:
Floor floor1; //floor1 object
Floor floor2; //floor2 object
Elevator elevator; //elevator object
Clock clock; //clock object
Scheduler scheduler; //scheduler object
};
#endif //BUILDING_H
//building.cpp
//Member function definitions for class Building.
#include
using std::cout;
using std::cin;
using std::endl;
#include \"building.h\"
Building::Building() //constructor
: floor1(Floor::FLOOR1, elevator),
floor2(Floor::FLOOR2, elevator),
elevator(floor1, floor2),
scheduler(floor1, floor2)
{ cout<<\"building created\"<
Building::~Building() //destructor
{ cout<< \"building destroyed\" << endl; }
void Building::runSimulation(int totalTime) //control the simulation
{
int currentTime=0;
while(currentTime < totalTime){
clock.tick();
currentTime=clock.getTime();
cout<<\"TIME: \"<
scheduler.processTime(currentTime);
elevator.processTime(currentTime);
cin.get(); //stop each second for user to view output
}
}
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
BFS.CPP
#include
#include
template class graph;
template
class queue {
T *qu;
int maxsize;
int rear, front;
public :
queue(int n);
~queue() {delete[] qu;}
void insert(const T& ob);
T* Delete(T& ob);
T isempty();
friend class graph;
};
template
class list{
T data;
list *link;
public :
list() {;}
list(int n) {data =n ; link=NULL;}
friend class graph;
};
template
class graph {
list *hn;
int ms;
public :
graph(int n);
~graph() {delete[] hn;}
void setgrp();
void BFS(int v);
};
template
queue :: queue(int n)
{
maxsize = n;
qu = new T[maxsize];
rear = front = -1;
}
template
graph :: graph(int n)
{
ms = n;
hn = new list[ms];
}
template
T queue :: isempty()
{
if(rear==front)
return 1;
return 0;
}
template
void queue :: insert(const T& ob)
{
int k =(rear+1)%maxsize;
if(front==k)
cout << \"queue is full\" << endl;
else qu[rear=k] = ob;
}
template
T* queue :: Delete(T& ob)
{
if(front==rear) {
cout << \"queue is empty\" << endl;
return 0;
}
ob = qu[++front%=maxsize];
return &ob;
}
//building.h
//Definition for class Building.
#ifndef BUILDING_H
#define BUILDING_H
#include \"elevator.h\"
#include \"floor.h\"
#include \"clock.h\"
#include \"scheduler.h\"
class Building{
public:
Building(); //constructor
~Building(); //destructor
void runSimulation(int); //run simulation for specified time
private:
Floor floor1; //floor1 object
Floor floor2; //floor2 object
Elevator elevator; //elevator object
Clock clock; //clock object
Scheduler scheduler; //scheduler object
};
#endif //BUILDING_H
//building.cpp
//Member function definitions for class Building.
#include
using std::cout;
using std::cin;
using std::endl;
#include \"building.h\"
Building::Building() //constructor
: floor1(Floor::FLOOR1, elevator),
floor2(Floor::FLOOR2, elevator),
elevator(floor1, floor2),
scheduler(floor1, floor2)
{ cout<<\"building created\"<
Building::~Building() //destructor
{ cout<< \"building destroyed\" << endl; }
void Building::runSimulation(int totalTime) //control the simulation
{
int currentTime=0;
while(currentTime < totalTime){
clock.tick();
currentTime=clock.getTime();
cout<<\"TIME: \"<
elevator.processTime(currentTime);
cin.get(); //stop each second for user to view output
}
}
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
BFS.CPP
#include
#include
template
template
class queue {
T *qu;
int maxsize;
int rear, front;
public :
queue(int n);
~queue() {delete[] qu;}
void insert(const T& ob);
T* Delete(T& ob);
T isempty();
friend class graph
};
template
class list{
T data;
list *link;
public :
list() {;}
list(int n) {data =n ; link=NULL;}
friend class graph
};
template
class graph {
list
int ms;
public :
graph(int n);
~graph() {delete[] hn;}
void setgrp();
void BFS(int v);
};
template
queue
{
maxsize = n;
qu = new T[maxsize];
rear = front = -1;
}
template
graph
{
ms = n;
hn = new list
}
template
T queue
{
if(rear==front)
return 1;
return 0;
}
template
void queue
{
int k =(rear+1)%maxsize;
if(front==k)
cout << \"queue is full\" << endl;
else qu[rear=k] = ob;
}
template
T* queue
{
if(front==rear) {
cout << \"queue is empty\" << endl;
return 0;
}
ob = qu[++front%=maxsize];
return &ob;
}
소개글