<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=BusSimulation%2F%EC%A1%B0%ED%98%84%ED%83%9C</id>
	<title>BusSimulation/조현태 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=BusSimulation%2F%EC%A1%B0%ED%98%84%ED%83%9C"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=BusSimulation/%EC%A1%B0%ED%98%84%ED%83%9C&amp;action=history"/>
	<updated>2026-05-14T18:55:06Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=BusSimulation/%EC%A1%B0%ED%98%84%ED%83%9C&amp;diff=29406&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:22, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=BusSimulation/%EC%A1%B0%ED%98%84%ED%83%9C&amp;diff=29406&amp;oldid=prev"/>
		<updated>2021-02-07T05:22:39Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== 느낀점 및 설명 ==&lt;br /&gt;
 뭔가 재미있어 보여서 만들기 시작했다.&lt;br /&gt;
 C++이라서 그런지.. 내가그런건지는 몰라도 이상하게 클래스로만 자면 C로 작성하는 것 보다 시간이 더 걸리는듯..&lt;br /&gt;
 하지만 재미있다!!^^*&lt;br /&gt;
 재미삼아 뚝딱 거리다 보니.. 이미 버스 사람 정거장 길... 질러버렸..&lt;br /&gt;
 그렇지만 아직까지 일은 하고있고, 시간도 없고, 해서 좀 낭비스럽지만 메모리 관리 및 소스가 엉망진창이다.ㅎ&lt;br /&gt;
 헤헤헤.. 그래도 재미있으니 뭐..ㅎㅎ&lt;br /&gt;
&lt;br /&gt;
 (사실 이 증명 시뮬레이션은 편도에서 버스 용량이 무한대고 설사 승객이 내리지 않더라도 승객이 타고, 타는데 시간이 걸린다는 것만으로도 버스가 몰려다니는 것으로 증명되어 있으나.. 재미없자넝~ 버스는 자고로 용량이 있어야.. 그리고탔으면 내리는게 인지상정.ㅎ)&lt;br /&gt;
 음 노약자석이라던가.. 길과 길을 이어버린다거나.. 버스를 왕복시킨다거나.. 하는것은 해보고 싶지만, 시간상 보류!&lt;br /&gt;
 사실 출력부분이 대부분 테스트용으로 만들어 진건데.. 일단 임시로 그대로 사용하기로 했다. 나중에 휴가기간에 소스좀 수정하도록 하겠다.&lt;br /&gt;
&lt;br /&gt;
 들떠서 다 적고나서 소스의 설명이 안되있는것을 깨닫고 시급히 수정.. 그런데 어느분이 그사이 페이지를 변경하셔서 눈물을 머금고 다시작성한다.ㅠ.ㅜ&lt;br /&gt;
----&lt;br /&gt;
 버스는 동일 간격으로 생성되게 되어있으며, 승객은 랜덤으로 생성된다.( 승객이 생성되는 비율을 역을 만들때 정할 수 있다. ) &lt;br /&gt;
 편도인 관계로 승객의 목적지는 승객이 생성된 이후의 역중 한곳(랜덤)으로 정해진다.&lt;br /&gt;
 또한 이런 문제로 마지막 역은 승객을 만들(!)수 없다.&lt;br /&gt;
&lt;br /&gt;
 버스가 자신의 속도(만들때 정할 수 있으며 이 소스에는 80으로 통일하였다.)로 움직이는데 한턴이 소모된다. (앞에 차량이 있어서 정차하거나, 역에 들어가게되어 자신의 이동거리를 다 가지 못하더라도 동일하게 한턴이 소모된다.)&lt;br /&gt;
 승객 1인을 태우고, 승객1인을 내리는데 1턴이 소모된다. (둘중에 한가지 과정만이 이루어 지더라도 동일하게 1턴이 소모된다.)&lt;br /&gt;
&lt;br /&gt;
 이러한 규칙을 기본으로 해서 시뮬레이션 하고 있다.&lt;br /&gt;
----&lt;br /&gt;
 (수정당해서 날렸던 충격이 큰터라 많이 설명이 줄었지만 이해하리라 믿는다.^^)&lt;br /&gt;
&lt;br /&gt;
* 물런 재미가 없긴 하겠지만 이 증명은 버스가 편도로 움직이고 버스용량이 무한이며, 승객이 내리지 않더라도 승객이 타고 승객이 타는데 시간만 걸린다면 버스의 몰림현상이 발생한다. (고로 증명하기 위해 소스를 많이 짤 필요가 없을 수도 있다. 재미가 없겠지만..ㅎ)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
 메모리 낭비를 요로코롬 줄였답니다.^^*&lt;br /&gt;
 많이 줄인대신에 연산이 좀 늘어난 듯 하지만.. 원체 원본이 메모리 낭비의 회심작..;;; 이다 보니..ㅎ&lt;br /&gt;
 아아 메모리 관리는 너무 힘들엇..ㅠ.ㅜ 저번 소스에서 발견되지 않았던 문제점이 있어 그것 역시 수정하였습니다.&lt;br /&gt;
 잘못된 메모리 접근오류..ㅠ.ㅜ 넘 찾기 힘들다는.ㅎ&lt;br /&gt;
 &lt;br /&gt;
== 소스 ==&lt;br /&gt;
 === main.cpp ===&lt;br /&gt;
 #include &amp;quot;bus_and_man.h&amp;quot;&lt;br /&gt;
 #include &amp;amp;lt;iostream&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 void Set_memory();&lt;br /&gt;
 void Call_act();&lt;br /&gt;
 &lt;br /&gt;
 road *cau_road;&lt;br /&gt;
 &lt;br /&gt;
 void main()&lt;br /&gt;
 {&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;시스템을 초기화 합니다.\n&amp;quot;;&lt;br /&gt;
 	Set_memory();&lt;br /&gt;
 	Call_act();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void Set_memory()&lt;br /&gt;
 {&lt;br /&gt;
 	cau_road=new road(3000);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;정문&amp;quot;,5,0,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;issac&amp;quot;,10,700,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;시장&amp;quot;,3,1000,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;중문&amp;quot;,10,1320,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;곰두리&amp;quot;,10,1700,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;공대건물&amp;quot;,2,2100,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;주차장&amp;quot;,30,2750,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;후문&amp;quot;,10,2999,5);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void Call_act()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=1; i&amp;amp;lt;20; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		for (register int j=0; j&amp;amp;lt;5; ++j)&lt;br /&gt;
 		{&lt;br /&gt;
 			cau_road-&amp;amp;gt;Act();&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
 			system(&amp;quot;PAUSE&amp;quot;);&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
 		}&lt;br /&gt;
 		cau_road-&amp;amp;gt;Start_car(i,20,0,80);&lt;br /&gt;
 	}&lt;br /&gt;
 	delete cau_road;&lt;br /&gt;
 }&lt;br /&gt;
 === bus_and_man.cpp ===&lt;br /&gt;
 //버스 위치.&lt;br /&gt;
 //승객&lt;br /&gt;
 //하는 일&lt;br /&gt;
 #include &amp;amp;lt;iostream&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;stdlib.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;time.h&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 #include &amp;quot;bus_and_man.h&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 const int MOVE=1;&lt;br /&gt;
 const int STOP=0;&lt;br /&gt;
 &lt;br /&gt;
 man::man(int input_from, int input_to)&lt;br /&gt;
 {&lt;br /&gt;
 	from=input_from;&lt;br /&gt;
 	to=input_to;&lt;br /&gt;
 }&lt;br /&gt;
 man::~man()&lt;br /&gt;
 {&lt;br /&gt;
 }&lt;br /&gt;
 int man::where_go()&lt;br /&gt;
 {&lt;br /&gt;
 	return to;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 station::station(int input_station_number, char *input_name, int input_percent, int input_size )&lt;br /&gt;
 {&lt;br /&gt;
 	strcpy(name,input_name);&lt;br /&gt;
 	percent=input_percent;&lt;br /&gt;
 	station_size=input_size;&lt;br /&gt;
 	number_man=0;&lt;br /&gt;
 	station_number=input_station_number;&lt;br /&gt;
 	humans=new man*[station_size];&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;station_size; ++i)&lt;br /&gt;
 		humans[i]=0;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; name &amp;amp;lt;&amp;amp;lt; &amp;quot;역이 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 station::~station()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;station_size; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0!=humans[i])&lt;br /&gt;
 			delete humans[i];&lt;br /&gt;
 	}&lt;br /&gt;
 	delete humans;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; name &amp;amp;lt;&amp;amp;lt; &amp;quot;역이 파괴되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void station::make_people(int numbers_station)&lt;br /&gt;
 {&lt;br /&gt;
 	if (station_size!=number_man &amp;amp;amp;&amp;amp;amp; numbers_station!=station_number+1)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0==rand()%percent)&lt;br /&gt;
 		{&lt;br /&gt;
 			humans[number_man]=new man(station_number,station_number+rand()%(numbers_station-station_number-1)+1);&lt;br /&gt;
 			++number_man;&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; name &amp;amp;lt;&amp;amp;lt; &amp;quot;역에 사람이 한명 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 man* station::out_people()&lt;br /&gt;
 {&lt;br /&gt;
 	if (0==number_man)&lt;br /&gt;
 		return 0;&lt;br /&gt;
 	man *temp_man=humans[0];&lt;br /&gt;
 	humans[0]=0;&lt;br /&gt;
 	for (register int i=1; i&amp;amp;lt;number_man; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		humans[i-1]=humans[i];&lt;br /&gt;
 		humans[i]=0;&lt;br /&gt;
 	}&lt;br /&gt;
 	--number_man;&lt;br /&gt;
 	return temp_man;&lt;br /&gt;
 }&lt;br /&gt;
 int station::where_here()&lt;br /&gt;
 {&lt;br /&gt;
 	return station_number;&lt;br /&gt;
 }&lt;br /&gt;
 void station::act(int numbers_station)&lt;br /&gt;
 {&lt;br /&gt;
 	make_people(numbers_station);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 void bus::move(road *in_road)&lt;br /&gt;
 {&lt;br /&gt;
 	int in_station=0;&lt;br /&gt;
 	int temp_where=where;&lt;br /&gt;
 	temp_where=in_road-&amp;amp;gt;car_move(&amp;amp;amp;in_station, speed, where);&lt;br /&gt;
 	if (1==in_station)&lt;br /&gt;
 		state=STOP;&lt;br /&gt;
 	if (-1==temp_where)&lt;br /&gt;
 		in_road-&amp;amp;gt;car_stop(where);&lt;br /&gt;
 	else&lt;br /&gt;
 	{&lt;br /&gt;
 		where=temp_where;&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;번 버스가 &amp;quot; &amp;amp;lt;&amp;amp;lt; where &amp;amp;lt;&amp;amp;lt; &amp;quot;로 이동하였습니다.\n&amp;quot;;&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 void bus::stop(station *in_station, road* in_road)&lt;br /&gt;
 {&lt;br /&gt;
 	man*in_people=in_station-&amp;amp;gt;out_people();&lt;br /&gt;
 	if (0!=in_people)&lt;br /&gt;
 	{&lt;br /&gt;
 		humans[number_man]=in_people;&lt;br /&gt;
 		++number_man;&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;번 버스가 승객을 승차하였습니다.\n&amp;quot;;&lt;br /&gt;
 	}&lt;br /&gt;
 	int suched=0;&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_man; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (in_station-&amp;amp;gt;where_here()==humans[i]-&amp;amp;gt;where_go())&lt;br /&gt;
 		{&lt;br /&gt;
 			delete humans[i];&lt;br /&gt;
 			humans[i]=0;&lt;br /&gt;
 			for (register int j=i+1; j&amp;amp;lt;number_man; ++j)&lt;br /&gt;
 			{&lt;br /&gt;
 				humans[j-1]=humans[j];&lt;br /&gt;
 				humans[j]=0;&lt;br /&gt;
 			}&lt;br /&gt;
 			--number_man;&lt;br /&gt;
 			suched=1;&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;번 버스가 승객을 하차하였습니다.\n&amp;quot;;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	if (0==suched &amp;amp;amp;&amp;amp;amp; 0==in_people)&lt;br /&gt;
 	{&lt;br /&gt;
 		state=MOVE;&lt;br /&gt;
 		move(in_road);&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 bus::bus(int input_number, int input_size, int input_where, int input_speed)&lt;br /&gt;
 {&lt;br /&gt;
 	number=input_number;&lt;br /&gt;
 	bus_size=input_size;&lt;br /&gt;
 	humans=new man*[bus_size];&lt;br /&gt;
 	state=STOP;&lt;br /&gt;
 	where=input_where;&lt;br /&gt;
 	number_man=0;&lt;br /&gt;
 	speed=input_speed;&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;bus_size; ++i)&lt;br /&gt;
 		humans[i]=0;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;호차가 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 bus::~bus()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;bus_size; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0!=humans[i])&lt;br /&gt;
 			delete humans[i];&lt;br /&gt;
 	}&lt;br /&gt;
 	delete humans;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;호차가 파괴되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 void bus::act(station* in_station, road* in_road)&lt;br /&gt;
 {&lt;br /&gt;
 	if (STOP==state)&lt;br /&gt;
 		stop(in_station, in_road);&lt;br /&gt;
 	else&lt;br /&gt;
 		move(in_road);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 road::road (int input_long)&lt;br /&gt;
 {&lt;br /&gt;
 	srand(time(NULL));&lt;br /&gt;
 	road_long=input_long;&lt;br /&gt;
 	number_station=0;&lt;br /&gt;
 	cars=new bus*[road_long];&lt;br /&gt;
 	buildings=new station*[road_long];&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;road_long; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		cars[i]=0;&lt;br /&gt;
 		buildings[i]=0;&lt;br /&gt;
 	}&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;도로1개가 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 road::~road()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;road_long; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0!=buildings[i])&lt;br /&gt;
 			delete buildings[i];&lt;br /&gt;
 		if (0!=cars[i])&lt;br /&gt;
 			delete cars[i];&lt;br /&gt;
 	}&lt;br /&gt;
 	delete cars;&lt;br /&gt;
 	delete buildings;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;도로1개가 파괴되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 int road::Build(char *input_name, int input_percent, int where, int input_size)&lt;br /&gt;
 {&lt;br /&gt;
 	if (0!=buildings[where])&lt;br /&gt;
 	{&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; &amp;quot;역을 생성하는데 실패하였습니다.\n&amp;quot;;&lt;br /&gt;
 		return -1;&lt;br /&gt;
 	}&lt;br /&gt;
 	buildings[where]=new station(number_station,input_name,input_percent,input_size);&lt;br /&gt;
 	++number_station;&lt;br /&gt;
 	return 0;&lt;br /&gt;
 }&lt;br /&gt;
 int road::Start_car(int input_number, int input_size, int input_where, int input_speed)&lt;br /&gt;
 {&lt;br /&gt;
 	if (0!=cars[input_where])&lt;br /&gt;
 	{&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; &amp;quot;차를 생성하는데 실패하였습니다.\n&amp;quot;;&lt;br /&gt;
 		return -1;&lt;br /&gt;
 	}&lt;br /&gt;
 	cars[input_where]=new bus(input_number,input_size,input_where, input_speed);&lt;br /&gt;
 	return 0;&lt;br /&gt;
 }&lt;br /&gt;
 void road::Act()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=road_long-1; i&amp;amp;gt;=0; --i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0!=buildings[i])&lt;br /&gt;
 			buildings[i]-&amp;amp;gt;act(number_station);&lt;br /&gt;
 		if (0!=cars[i])&lt;br /&gt;
 			cars[i]-&amp;amp;gt;act(buildings[i],this);&lt;br /&gt;
 	}&lt;br /&gt;
 &lt;br /&gt;
 }&lt;br /&gt;
 int road::car_move(int *state, int speed, int where)&lt;br /&gt;
 {&lt;br /&gt;
 	register int i;&lt;br /&gt;
 	for (i=where+1; i&amp;amp;lt;=where+speed; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (i&amp;amp;gt;=road_long)&lt;br /&gt;
 			return -1;&lt;br /&gt;
 		if (0!=cars[i])&lt;br /&gt;
 			break;&lt;br /&gt;
 		if (0!=buildings[i])&lt;br /&gt;
 		{&lt;br /&gt;
 			*state=1;&lt;br /&gt;
 			++i;&lt;br /&gt;
 			break;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	if (i-1!=where)&lt;br /&gt;
 	{&lt;br /&gt;
 		cars[i-1]=cars[where];&lt;br /&gt;
 		cars[where]=0;&lt;br /&gt;
 	}&lt;br /&gt;
 	return i-1;&lt;br /&gt;
 }&lt;br /&gt;
 void road::car_stop(int where)&lt;br /&gt;
 {&lt;br /&gt;
 	delete cars[where];&lt;br /&gt;
 	cars[where]=0;&lt;br /&gt;
 }&lt;br /&gt;
 === bus_and_man.h ===&lt;br /&gt;
 &lt;br /&gt;
 class man;&lt;br /&gt;
 class station;&lt;br /&gt;
 class bus;&lt;br /&gt;
 class road;&lt;br /&gt;
 &lt;br /&gt;
 class man{&lt;br /&gt;
 private:&lt;br /&gt;
 	int from;&lt;br /&gt;
 	int to;&lt;br /&gt;
 public:&lt;br /&gt;
 	man(int input_from, int input_to);&lt;br /&gt;
 	~man();&lt;br /&gt;
 	int where_go();&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 class station{&lt;br /&gt;
 private:&lt;br /&gt;
 	char name[256];&lt;br /&gt;
 	int station_number;&lt;br /&gt;
 	int percent;&lt;br /&gt;
 	int station_size;&lt;br /&gt;
 	int number_man;&lt;br /&gt;
 	man **humans;&lt;br /&gt;
 	void make_people(int);&lt;br /&gt;
 public:&lt;br /&gt;
 	station(int, char*, int, int);&lt;br /&gt;
 	~station();&lt;br /&gt;
 	man* out_people();&lt;br /&gt;
 	int where_here();&lt;br /&gt;
 	void act(int);&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 class bus{&lt;br /&gt;
 private:&lt;br /&gt;
 	int number;&lt;br /&gt;
 	int bus_size;&lt;br /&gt;
 	int state;&lt;br /&gt;
 	int where;&lt;br /&gt;
 	man **humans;&lt;br /&gt;
 	int number_man;&lt;br /&gt;
 	int speed;&lt;br /&gt;
 	&lt;br /&gt;
 	void move(road*);&lt;br /&gt;
 	void stop(station*, road*);&lt;br /&gt;
 public:&lt;br /&gt;
 	bus(int , int , int , int );&lt;br /&gt;
 	~bus();&lt;br /&gt;
 	void act(station* , road* );&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class road{&lt;br /&gt;
 private:&lt;br /&gt;
 	int road_long;&lt;br /&gt;
 	int number_station;&lt;br /&gt;
 	bus **cars;&lt;br /&gt;
 	station **buildings;&lt;br /&gt;
 public:&lt;br /&gt;
 	road (int );&lt;br /&gt;
 	~road();&lt;br /&gt;
 	int Build(char*, int , int, int );&lt;br /&gt;
 	int Start_car(int , int , int , int );&lt;br /&gt;
 	void Act();&lt;br /&gt;
 	int car_move(int*, int , int );&lt;br /&gt;
 	void car_stop(int);&lt;br /&gt;
 };&lt;br /&gt;
 == 1차 수정버전 소스 ==&lt;br /&gt;
 === main.cpp ===&lt;br /&gt;
 #include &amp;quot;bus_and_man.h&amp;quot;&lt;br /&gt;
 #include &amp;amp;lt;iostream&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 void Set_memory();&lt;br /&gt;
 void Call_act();&lt;br /&gt;
 &lt;br /&gt;
 road *cau_road;&lt;br /&gt;
 &lt;br /&gt;
 void main()&lt;br /&gt;
 {&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;시스템을 초기화 합니다.\n&amp;quot;;&lt;br /&gt;
 	Set_memory();&lt;br /&gt;
 	Call_act();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void Set_memory()&lt;br /&gt;
 {&lt;br /&gt;
 	cau_road=new road(3000);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;정문&amp;quot;,5,0,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;issac&amp;quot;,10,700,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;시장&amp;quot;,3,1000,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;중문&amp;quot;,10,1320,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;곰두리&amp;quot;,10,1700,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;공대건물&amp;quot;,2,2100,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;주차장&amp;quot;,30,2750,5);&lt;br /&gt;
 	cau_road-&amp;amp;gt;Build(&amp;quot;후문&amp;quot;,10,2999,5);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void Call_act()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=1; i&amp;amp;lt;20; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		for (register int j=0; j&amp;amp;lt;5; ++j)&lt;br /&gt;
 		{&lt;br /&gt;
 			cau_road-&amp;amp;gt;Act();&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
 			system(&amp;quot;PAUSE&amp;quot;);&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
 		}&lt;br /&gt;
 		cau_road-&amp;amp;gt;Start_car(i,20,0,80);&lt;br /&gt;
 	}&lt;br /&gt;
 	delete cau_road;&lt;br /&gt;
 }&lt;br /&gt;
 === bus_and_man.cpp ===&lt;br /&gt;
 //버스 위치.&lt;br /&gt;
 //승객&lt;br /&gt;
 //하는 일&lt;br /&gt;
 #include &amp;amp;lt;iostream&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;stdlib.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;time.h&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 #include &amp;quot;bus_and_man.h&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 const int MOVE=1;&lt;br /&gt;
 const int STOP=0;&lt;br /&gt;
 &lt;br /&gt;
 man::man(int input_from, int input_to)&lt;br /&gt;
 {&lt;br /&gt;
 	from=input_from;&lt;br /&gt;
 	to=input_to;&lt;br /&gt;
 }&lt;br /&gt;
 man::~man()&lt;br /&gt;
 {&lt;br /&gt;
 }&lt;br /&gt;
 int man::where_go()&lt;br /&gt;
 {&lt;br /&gt;
 	return to;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 station::station(int input_station_number, char *input_name, int input_percent, int input_size, int input_where)&lt;br /&gt;
 {&lt;br /&gt;
 	strcpy(name,input_name);&lt;br /&gt;
 	percent=input_percent;&lt;br /&gt;
 	station_size=input_size;&lt;br /&gt;
 	number_man=0;&lt;br /&gt;
 	station_number=input_station_number;&lt;br /&gt;
 	where=input_where;&lt;br /&gt;
 	humans=new man*[station_size];&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;station_size; ++i)&lt;br /&gt;
 		humans[i]=0;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; name &amp;amp;lt;&amp;amp;lt; &amp;quot;역이 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 station::~station()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;station_size; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0!=humans[i])&lt;br /&gt;
 			delete humans[i];&lt;br /&gt;
 	}&lt;br /&gt;
 	delete humans;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; name &amp;amp;lt;&amp;amp;lt; &amp;quot;역이 파괴되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void station::make_people(int numbers_station)&lt;br /&gt;
 {&lt;br /&gt;
 	if (station_size!=number_man &amp;amp;amp;&amp;amp;amp; numbers_station!=station_number+1)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0==rand()%percent)&lt;br /&gt;
 		{&lt;br /&gt;
 			humans[number_man]=new man(station_number,station_number+rand()%(numbers_station-station_number-1)+1);&lt;br /&gt;
 			++number_man;&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; name &amp;amp;lt;&amp;amp;lt; &amp;quot;역에 사람이 한명 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 man* station::out_people()&lt;br /&gt;
 {&lt;br /&gt;
 	if (0==number_man)&lt;br /&gt;
 		return 0;&lt;br /&gt;
 	man *temp_man=humans[0];&lt;br /&gt;
 	humans[0]=0;&lt;br /&gt;
 	for (register int i=1; i&amp;amp;lt;number_man; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		humans[i-1]=humans[i];&lt;br /&gt;
 		humans[i]=0;&lt;br /&gt;
 	}&lt;br /&gt;
 	--number_man;&lt;br /&gt;
 	return temp_man;&lt;br /&gt;
 }&lt;br /&gt;
 int station::where_here()&lt;br /&gt;
 {&lt;br /&gt;
 	return station_number;&lt;br /&gt;
 }&lt;br /&gt;
 void station::act(int numbers_station)&lt;br /&gt;
 {&lt;br /&gt;
 	make_people(numbers_station);&lt;br /&gt;
 }&lt;br /&gt;
 int station::where_am_i()&lt;br /&gt;
 {&lt;br /&gt;
 	return where;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void bus::move(road *in_road)&lt;br /&gt;
 {&lt;br /&gt;
 	int in_station=0;&lt;br /&gt;
 	int temp_where=where;&lt;br /&gt;
 	temp_where=in_road-&amp;amp;gt;car_move(&amp;amp;amp;in_station, speed, where);&lt;br /&gt;
 	if (1==in_station)&lt;br /&gt;
 		state=STOP;&lt;br /&gt;
 	if (-1==temp_where)&lt;br /&gt;
 		in_road-&amp;amp;gt;car_stop(number);&lt;br /&gt;
 	else&lt;br /&gt;
 	{&lt;br /&gt;
 		where=temp_where;&lt;br /&gt;
 		cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;번 버스가 &amp;quot; &amp;amp;lt;&amp;amp;lt; where &amp;amp;lt;&amp;amp;lt; &amp;quot;로 이동하였습니다.\n&amp;quot;;&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 void bus::stop(station *in_station, road* in_road)&lt;br /&gt;
 {&lt;br /&gt;
 	man*in_people=0;&lt;br /&gt;
 	if (number_man&amp;amp;lt;bus_size)&lt;br /&gt;
 	{&lt;br /&gt;
 		in_people=in_station-&amp;amp;gt;out_people();&lt;br /&gt;
 		if (0!=in_people)&lt;br /&gt;
 		{&lt;br /&gt;
 			humans[number_man]=in_people;&lt;br /&gt;
 			++number_man;&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;번 버스가 승객을 승차하였습니다.\n&amp;quot;;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	int suched=0;&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_man; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (in_station-&amp;amp;gt;where_here()==humans[i]-&amp;amp;gt;where_go())&lt;br /&gt;
 		{&lt;br /&gt;
 			delete humans[i];&lt;br /&gt;
 			humans[i]=0;&lt;br /&gt;
 			for (register int j=i+1; j&amp;amp;lt;number_man; ++j)&lt;br /&gt;
 			{&lt;br /&gt;
 				humans[j-1]=humans[j];&lt;br /&gt;
 				humans[j]=0;&lt;br /&gt;
 			}&lt;br /&gt;
 			--number_man;&lt;br /&gt;
 			suched=1;&lt;br /&gt;
 			cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;번 버스가 승객을 하차하였습니다. (잔여승객수 : &amp;quot; &amp;amp;lt;&amp;amp;lt; number_man &amp;amp;lt;&amp;amp;lt; &amp;quot; ) \n&amp;quot;;&lt;br /&gt;
 			break;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	if (0==suched &amp;amp;amp;&amp;amp;amp; 0==in_people)&lt;br /&gt;
 	{&lt;br /&gt;
 		state=MOVE;&lt;br /&gt;
 		move(in_road);&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 bus::bus(int input_number, int input_size, int input_where, int input_speed)&lt;br /&gt;
 {&lt;br /&gt;
 	number=input_number;&lt;br /&gt;
 	bus_size=input_size;&lt;br /&gt;
 	humans=new man*[bus_size];&lt;br /&gt;
 	state=STOP;&lt;br /&gt;
 	where=input_where;&lt;br /&gt;
 	number_man=0;&lt;br /&gt;
 	speed=input_speed;&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;bus_size; ++i)&lt;br /&gt;
 		humans[i]=0;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;호차가 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 bus::~bus()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;bus_size; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0!=humans[i])&lt;br /&gt;
 			delete humans[i];&lt;br /&gt;
 	}&lt;br /&gt;
 	delete humans;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; number &amp;amp;lt;&amp;amp;lt; &amp;quot;호차가 파괴되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 void bus::act(station* in_station, road* in_road)&lt;br /&gt;
 {&lt;br /&gt;
 	if (STOP==state)&lt;br /&gt;
 		stop(in_station, in_road);&lt;br /&gt;
 	else&lt;br /&gt;
 		move(in_road);&lt;br /&gt;
 }&lt;br /&gt;
 int bus::where_am_i()&lt;br /&gt;
 {&lt;br /&gt;
 	return where;&lt;br /&gt;
 }&lt;br /&gt;
 int bus::what_number()&lt;br /&gt;
 {&lt;br /&gt;
 	return number;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 road::road (int input_long)&lt;br /&gt;
 {&lt;br /&gt;
 	srand(time(NULL));&lt;br /&gt;
 	road_long=input_long;&lt;br /&gt;
 	number_station=0;&lt;br /&gt;
 	number_bus=0;&lt;br /&gt;
 	cars=NULL;&lt;br /&gt;
 	buildings=NULL;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;도로1개가 생성되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 road::~road()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_bus; ++i)&lt;br /&gt;
 		delete cars[i];&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_station; ++i)&lt;br /&gt;
 		delete buildings[i];&lt;br /&gt;
 	if (cars!=NULL)&lt;br /&gt;
 		delete cars;&lt;br /&gt;
 	if (buildings!=NULL)&lt;br /&gt;
 		delete buildings;&lt;br /&gt;
 	cout &amp;amp;lt;&amp;amp;lt; &amp;quot;도로1개가 파괴되었습니다.\n&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 int road::Build(char *input_name, int input_percent, int where, int input_size)&lt;br /&gt;
 {&lt;br /&gt;
 	if (0!=number_station)&lt;br /&gt;
 	{&lt;br /&gt;
 		for (register int i=0; i&amp;amp;lt;number_station; ++i)&lt;br /&gt;
 		{&lt;br /&gt;
 			if (buildings[i]-&amp;amp;gt;where_am_i()==where)&lt;br /&gt;
 			{&lt;br /&gt;
 				cout &amp;amp;lt;&amp;amp;lt; &amp;quot;역을 생성하는데 실패하였습니다.\n&amp;quot;;&lt;br /&gt;
 				return -1;&lt;br /&gt;
 			}&lt;br /&gt;
 		}&lt;br /&gt;
 		station** temp=new station*[number_station+1];&lt;br /&gt;
 		for (register int i=0; i&amp;amp;lt;number_station; ++i)&lt;br /&gt;
 		{&lt;br /&gt;
 			temp[i]=buildings[i];&lt;br /&gt;
 		}&lt;br /&gt;
 		delete buildings;&lt;br /&gt;
 		buildings=temp;&lt;br /&gt;
 		buildings[i]=new station(number_station,input_name,input_percent,input_size,where);&lt;br /&gt;
 	}&lt;br /&gt;
 	else&lt;br /&gt;
 	{&lt;br /&gt;
 		buildings=new station*;&lt;br /&gt;
 		buildings[0]=new station(number_station,input_name,input_percent,input_size,where);&lt;br /&gt;
 	}&lt;br /&gt;
 	++number_station;&lt;br /&gt;
 	return 0;&lt;br /&gt;
 }&lt;br /&gt;
 int road::Start_car( int input_number, int input_size, int input_where, int input_speed)&lt;br /&gt;
 {&lt;br /&gt;
 	if (0!=number_bus)&lt;br /&gt;
 	{&lt;br /&gt;
 		for (register int i=0; i&amp;amp;lt;number_bus; ++i)&lt;br /&gt;
 		{&lt;br /&gt;
 			if (cars[i]-&amp;amp;gt;where_am_i()==input_where)&lt;br /&gt;
 			{&lt;br /&gt;
 				cout &amp;amp;lt;&amp;amp;lt; &amp;quot;차를 생성하는데 실패하였습니다.\n&amp;quot;;&lt;br /&gt;
 				return -1;&lt;br /&gt;
 			}&lt;br /&gt;
 		}&lt;br /&gt;
 		bus** temp=new bus*[number_bus+1];&lt;br /&gt;
 		for (register int i=0; i&amp;amp;lt;number_bus; ++i)&lt;br /&gt;
 		{&lt;br /&gt;
 			temp[i]=cars[i];&lt;br /&gt;
 		}&lt;br /&gt;
 		delete cars;&lt;br /&gt;
 		cars=temp;&lt;br /&gt;
 		cars[number_bus]=new bus(input_number,input_size,input_where, input_speed);&lt;br /&gt;
 	}&lt;br /&gt;
 	else&lt;br /&gt;
 	{&lt;br /&gt;
 		cars=new bus*;&lt;br /&gt;
 		cars[0]=new bus(input_number,input_size,input_where, input_speed);&lt;br /&gt;
 	}&lt;br /&gt;
 	++number_bus;&lt;br /&gt;
 	return 0;&lt;br /&gt;
 }&lt;br /&gt;
 void road::Act()&lt;br /&gt;
 {&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_station; ++i)&lt;br /&gt;
 		buildings[i]-&amp;amp;gt;act(number_station);&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_bus; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		for (register int j=0; j&amp;amp;lt;number_station; ++j)&lt;br /&gt;
 		{&lt;br /&gt;
 			if (buildings[j]-&amp;amp;gt;where_am_i()==cars[i]-&amp;amp;gt;where_am_i())&lt;br /&gt;
 			{&lt;br /&gt;
 				cars[i]-&amp;amp;gt;act(buildings[j],this);&lt;br /&gt;
 				break;&lt;br /&gt;
 			}&lt;br /&gt;
 		}&lt;br /&gt;
 		if (j==number_station)&lt;br /&gt;
 			cars[i]-&amp;amp;gt;act(0,this);&lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
 int road::car_move(int *state, int speed, int where)&lt;br /&gt;
 {&lt;br /&gt;
 	int temp_where=where+speed;&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_station; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (where&amp;amp;lt;buildings[i]-&amp;amp;gt;where_am_i() &amp;amp;amp;&amp;amp;amp; temp_where&amp;amp;gt;=buildings[i]-&amp;amp;gt;where_am_i())&lt;br /&gt;
 		{&lt;br /&gt;
 			temp_where=buildings[i]-&amp;amp;gt;where_am_i();&lt;br /&gt;
 			*state=1;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_bus; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (where&amp;amp;lt;cars[i]-&amp;amp;gt;where_am_i() &amp;amp;amp;&amp;amp;amp; temp_where&amp;amp;gt;=cars[i]-&amp;amp;gt;where_am_i())&lt;br /&gt;
 		{&lt;br /&gt;
 			temp_where=cars[i]-&amp;amp;gt;where_am_i();&lt;br /&gt;
 			*state=0;&lt;br /&gt;
 		}&lt;br /&gt;
 	}&lt;br /&gt;
 	if (temp_where&amp;amp;gt;=road_long)&lt;br /&gt;
 		return -1;&lt;br /&gt;
 	if (*state==0)&lt;br /&gt;
 		return temp_where-1;&lt;br /&gt;
 	else&lt;br /&gt;
 		return temp_where;&lt;br /&gt;
 }&lt;br /&gt;
 void road::car_stop(int number)&lt;br /&gt;
 {&lt;br /&gt;
 	bus** temp=new bus*[number_bus-1];&lt;br /&gt;
 	int swit=0;&lt;br /&gt;
 	for (register int i=0; i&amp;amp;lt;number_bus; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		if (0==swit)&lt;br /&gt;
 		{&lt;br /&gt;
 			if (cars[i]-&amp;amp;gt;what_number()==number)&lt;br /&gt;
 			{&lt;br /&gt;
 				delete cars[i];&lt;br /&gt;
 				swit=1;&lt;br /&gt;
 			}&lt;br /&gt;
 			else&lt;br /&gt;
 				temp[i]=cars[i];&lt;br /&gt;
 		}&lt;br /&gt;
 		else&lt;br /&gt;
             temp[i-1]=cars[i];&lt;br /&gt;
 	} &lt;br /&gt;
 	delete cars;&lt;br /&gt;
 	cars=temp;&lt;br /&gt;
 	--number_bus;&lt;br /&gt;
 }&lt;br /&gt;
 === bus_and_man.h ===&lt;br /&gt;
 &lt;br /&gt;
 class man;&lt;br /&gt;
 class station;&lt;br /&gt;
 class bus;&lt;br /&gt;
 class road;&lt;br /&gt;
 &lt;br /&gt;
 class man{&lt;br /&gt;
 private:&lt;br /&gt;
 	int from;&lt;br /&gt;
 	int to;&lt;br /&gt;
 public:&lt;br /&gt;
 	man(int input_from, int input_to);&lt;br /&gt;
 	~man();&lt;br /&gt;
 	int where_go();&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 class station{&lt;br /&gt;
 private:&lt;br /&gt;
 	char name[256];&lt;br /&gt;
 	int station_number;&lt;br /&gt;
 	int percent;&lt;br /&gt;
 	int station_size;&lt;br /&gt;
 	int number_man;&lt;br /&gt;
 	int where;&lt;br /&gt;
 	man **humans;&lt;br /&gt;
 	void make_people(int);&lt;br /&gt;
 public:&lt;br /&gt;
 	station(int, char*, int, int, int);&lt;br /&gt;
 	~station();&lt;br /&gt;
 	man* out_people();&lt;br /&gt;
 	int where_here();&lt;br /&gt;
 	void act(int);&lt;br /&gt;
 	int where_am_i();&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 class bus{&lt;br /&gt;
 private:&lt;br /&gt;
 	int number;&lt;br /&gt;
 	int bus_size;&lt;br /&gt;
 	int state;&lt;br /&gt;
 	int where;&lt;br /&gt;
 	man **humans;&lt;br /&gt;
 	int number_man;&lt;br /&gt;
 	int speed;&lt;br /&gt;
 	&lt;br /&gt;
 	void move(road*);&lt;br /&gt;
 	void stop(station*, road*);&lt;br /&gt;
 public:&lt;br /&gt;
 	bus(int , int , int , int );&lt;br /&gt;
 	~bus();&lt;br /&gt;
 	void act(station* , road* );&lt;br /&gt;
 	int where_am_i();&lt;br /&gt;
 	int what_number();&lt;br /&gt;
 };&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 class road{&lt;br /&gt;
 private:&lt;br /&gt;
 	int road_long;&lt;br /&gt;
 	int number_station;&lt;br /&gt;
 	int number_bus;&lt;br /&gt;
 	bus **cars;&lt;br /&gt;
 	station **buildings;&lt;br /&gt;
 public:&lt;br /&gt;
 	road (int );&lt;br /&gt;
 	~road();&lt;br /&gt;
 	int Build(char*, int , int, int );&lt;br /&gt;
 	int Start_car( int, int , int , int );&lt;br /&gt;
 	void Act();&lt;br /&gt;
 	int car_move(int*, int , int );&lt;br /&gt;
 	void car_stop(int);&lt;br /&gt;
 };&lt;br /&gt;
== 나에게 할말 ==&lt;br /&gt;
* 오~ 현태도 짜버렸구나 ㅋㅋ - [[상협]]&lt;br /&gt;
   └헤헤헤.ㅎㅎ 재밌어 보여서..ㅎ 근데 소스가 엉망이에요.ㅎ 빨리 일을 끝내야징.. 쉬는 시간이 없어서.ㅎ 하루=잠+일; 이라는..ㅠ.ㅜ&lt;br /&gt;
     일 끝나면 소스 수정할께요.^^* -[[조현태]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[BusSimulation]]&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>