소개글
제목 : 스택을 이용하여 미로 찾기
1. 미로문제
- 입력자료형 : maze[m][p] => 경계문제를 위하여 maze[m+2][p+2]로 구현
- 참조자료형 : mark[m][p], 0 으로 초기화
- maze[i][j] = 0(길) 또는 1(벽)
- mark[i][j] = 0(무방문) 또는 1(방문)
- 입구/ 출구 : maze[1][1] / maze[m][p]
- 연결성 : 8방향
2. 프로그램
(가) 임의로 미로를 입력하고, 길을 찾아, 출력하는 class 생성
- 소속 데이터 멤버, 소속함수
3. 제출자료
- ADT(명세서)
- 최종 C++ 프로그램 인쇄물(.h, .cpp)
- 실행결과 예들
컴파일 실행환경
1. ADT(명세서)2. 최종 C++ 프로그램 인쇄물(.h, .cpp)3. 실행결과 예들
본문내용
2. 최종 C++ 프로그램 인쇄물(.h, .cpp)
// 미로찾기 프로그램
// maze.cpp
#include
#include
#include
#include
#include
#include "maze.h"
using namespace std;
struct offsets // 방향 구조체
{
int a, b;
};
// 8방향 연결성 N NE E SE S SW W NW
offsets move[8] = {{-1,0},{-1,1},{0,1},{1,1},{1,0},{1,-1},{0,-1},{-1,-1}};
class Items // 경로 클래스
{
private:
int x, y, dir;
Items *next;
public:
friend class Stack;
friend class Rat;
Items(); // 기본 생성자
Items(int X, int Y, int D); // 생성자
~Items(); // 소멸자
};
Items::Items() // 기본 생성자 : 변수들 초기화
{
x = -1;
y = -1;
dir = -1;
next = NULL;
}
Items::Items(int X, int Y, int D) // 생성자
{
x = X;
y = Y;
dir = D;
next = NULL;
}
Items::~Items(){} // 소멸자
......
압축파일 내 파일목록
스택을 이용하여 미로 찾기.hwp
maze/Debug/maze.exe
maze/Debug/maze.ilk
maze/Debug/maze.pdb
maze/maze/Debug/BuildLog.htm
maze/maze/Debug/maze.exe.embed.manifest
maze/maze/Debug/maze.exe.embed.manifest.res
maze/maze/Debug/maze.exe.intermediate.manifest
maze/maze/Debug/maze.obj
maze/maze/Debug/mt.dep
maze/maze/Debug/vc90.idb
maze/maze/Debug/vc90.pdb
maze/maze/maze.cpp
maze/maze/maze.h
maze/maze/maze.vcproj
maze/maze/maze.vcproj.Jun-PC.Administrator.user
maze/maze.ncb
maze/maze.sln
maze/maze.suo
참고 자료
FUNDAMENTALS OF DATA STRUCTURES IN C