Prof. Kyungshik Lim Kyungpook National University

Slides:



Advertisements
Similar presentations
프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
Advertisements

Chapter 12. 배열. 배열  동일한 항목들이 동일한 크기로 연속적으로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는 자료 구조.
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
복지정책 9 조 with 신동면 prof. 기초노령연금 기초노령연금 기초노령연금의 이해 기초노령연금에 대한 쟁점 현 기초노령연금의 문제점.
MS 워드 2007 기초 사용법 MS 워드 2007 시작하기와 종료 MS 워드 2007 화면의 구성요소 MS 워드 2007 단축키 ( 기초 ) MS 워드 2007 표 그리기 MS 워드 2007 화일변환.
Android 프로그램개발 환경. 학습 목표 ■ 교육 목표  JDK 설치  JDK 환경 설정  Eclipse 설치  Android SDK 설치  ADT Plug-in 설치  Android Virtual Device(AVD) 설치  Android 예제 프로그램.
출석수업 과제 – 총 5문제, 10월 25일 제출 정보통계학과 장영재 교수.
보도메일 HTML 소스 사용 안내 Version 1.0( 미디어국 제작)
보도메일 HTML 소스 사용 안내 Version 1.0( 미디어국 제작)
제3장 게임기본모듈 Page 153 ~ 182.
Cross Compiler를이용한 커널 컴파일 및 포팅
Cross Compiler를이용한 커널 컴파일 및 포팅 1
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
데이터 파일 C 데이터 파일과 스트림(Stream) 텍스트 파일 처리
조 병 규 Software Quality Lab. 한국교통대학교
제 14장 Multicast & Broadcast
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
제3장 스택과 큐.
P150 문제를 프로그래밍 할 것 Source file (헤더파일포함), 실행화면 (학번_이름_1.txt)
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
임베디드 실습 # LED, 7’Segment 제어
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
11 표준 입출력과 파일 입출력 데이터를 읽고 쓰는 다양한 방법 익히기!.
보고서 #5(제출기한: 10/14) 다음 문제를 해결하시오.
프로그래밍 랩 – 7주 리스트.
11장. 1차원 배열.
SK건설 기성실적 증명발급 Manual (협력업체용)
Introduction To Data Structures Using C
Cross Compiler를이용한 커널 컴파일 및 포팅
프로그래밍 개요
CHAP 13. 방명록 만들기 실습.
2017년 1학기 국가근로장학금 장학생 교육 1.
이름 : 황 상 두 전화번호 : 이메일 : PinTool 이름 : 황 상 두 전화번호 : 이메일 :
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
영상처리 실습 인공지능연구실.
24장. 파일 입출력.
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
USN(Ubiquitous Sensor Network)
학기 C/C++ 프로그래밍 실습 1주차.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
HyperWorks Apps 설치 가이드.
C언어 응용 제7주 실습 해보기 제6장.
자바 5.0 프로그래밍.
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
1. 스크립트 작성 마법사 2. NSIS 스크립트 컴파일
문자열 컴퓨터시뮬레이션학과 2015년 봄학기 담당교수 : 이형원 E304호,
컴퓨터 개론 및 실습 1주차 2015년 03월 05일.
S-Work 2.0 DRM 신규 버전 설치 가이드 SOFTCAMP
^^ Computer Programming 2 dmpr.cnu.ac.kr/~daygax.
단축키 기능 1. 단축키 기능 설명 Alt + R 조회 S 저장 I 삽입 A 추가 D 삭제 P 출력 Q 닫기
STS 또는 Eclipse 에서 프로젝트를 Export 하고 Import 하는 방법
05. General Linear List – Homework
[INA240] Data Structures and Practice
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
Chapter 10 데이터 검색1.
1. 입력 데이터 ② 대학, 학과: 대학이 존재하지 않을 경우 학과명을 대학에 입력 학과명은 공백으로 유지 (하단 참조)
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
구조체(struct)와 공용체(union)
동적메모리와 연결 리스트 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원 E304호,
제 4 장 Record.
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
제 29 강 스트링(string) 다루기 s a i s . s T i h t g r i n.
어서와 C언어는 처음이지 제21장.
6 객체.
Intelligent software Lab. 전재원
2019 2학기 9장 배열과 포인터 1. 주소, 주소연산자(&) 2. 포인터, 역참조연산자(*) 3. 배열과 포인터.
Presentation transcript:

2007. 09. 17 Prof. Kyungshik Lim Kyungpook National University 자료구조 과제 1 (maze program) 2007. 09. 17 Prof. Kyungshik Lim Kyungpook National University

목 차 Maze program 과제 설명 Appendix 1. 미로파일 샘플 Appendix 2. 파일 입력을 통한 미로 저장 목 차 Maze program 과제 설명 Appendix 1. 미로파일 샘플 Appendix 2. 파일 입력을 통한 미로 저장 Appendix 3. 파일입출력 프로그램 실행방법

Maze program 과제 설명(1/3) Maze problem 정의 Maze problem의 특징 1 주어진 미로의 경로를 통하여 좌측 상단에서 우측 하단까지 이동하여 미로를 탈출하는 문제 Maze problem의 특징 미로는 숫자 0, 1으로 구성 0 : 경로, 1 : 벽 미로의 좌측 상단에서부터 시작, 우측하단으로 빠져나옴 문제해결을 위해 미로를 벽(1)으로 막음 ex) 1

Maze program 과제 설명(2/3) 동작과정 좌표 (1, 1)에서 출발하여 미로 파일의 우측 하단 탈출구까지 이동 경로 탐색 순서 북  북동  동  남동  남  남서  서  북서 경로 탐색, 이동 이동 경로가 있을 때는 스택에 저장 후 이동 사방이 막혀있는 경우 이전 경로로 이동하고, 스택의 저장된 정보 꺼냄 미로에서 탈출 할 때까지 경로의 탐색과 이동 반복 Ex) 탐색 Ex) 이동 막힌 경우 되돌아 옴 (스택에서 해당 데이터 Pop) 1 1 1 8 2 7 3 6 5 4

Maze program 과제 설명(3/3) 요구사항 과제 제출 프로그램 작성언어 : C, C++ txt파일 입출력을 통해 미로의 구조를 배열에 저장 자세한 내용은 [Appendix 1, 2] 참고 프로그램 종료시 미로 탈출 경로 출력 ex) 1,1(E) -> 1,2(S) -> ... -> n,m(E) -> Goal 과제 제출 고현욱 : hwko@ccmc.knu.ac.kr 메일제목 : [자료구조] 과제1_200x037xxx_홍길동 첨부파일 파일명 : 과제1_200x037xxx_홍길동.zip 내 용 : 소스파일(.c), 실행파일(.exe), 문서파일(.hwp or .doc) 제출일자 2007년 9월 27일(목) 까지 기타 궁금한 사항은 http://wicom.knu.ac.kr의 Q&A 혹은 해당 조교에게 메일로 문의하십시오.

Appendix 1. 미로파일 샘플 미로파일 샘플(data.txt) 가로, 세로 크기 : 10x10 (최대 30x30까지 허용가능) 미로 파일은 숫자 0, 1로 구성 가로의 숫자와 숫자 사이는 space bar(␣)’로, 세로의 숫자와 숫자 사이는 ‘Enter(↲)’로 구분 파일의 마지막은 ‘Enter(↲)’ 미포함 0␣1␣0␣1↲ 0␣0␣0␣1↲ 1␣0␣0␣0

Appendix 2. 파일 입력을 통한 미로 저장(1/2) 샘플 파일 입출력 소스코드(sample.c) #define HEIGHT 32 // maze 배열의 세로 개수 #define WIDTH 32 // maze 배열의 가로 개수 int main() { int now_Width=1, now_Height=1; // 파일 저장 좌표 int maze[WIDTH][HEIGHT]; // maze 배열 선언 FILE *fp; // 파일 포인터 선언 scanf("%s", filename); // 파일 이름 입력 if((fp = fopen(filename, "r")) == NULL) { // 파일 열기, 파일포인터를 fp에 저장 while(!feof(fp)) { // 파일 포인터를 파일의 종료 부분까지 증가

Appendix 2. 파일 입력을 통한 미로 저장(2/2) 샘플 파일 입출력 소스코드(sample.c) switch(fgetc(fp)) { // 저장된 데이터(0,1,space bar enter) 구분 case '0' : { // 데이터가 ‘0’인 경우 maze 배열에 저장 maze[now_Width][now_Height]=0; now_Width++; // 가로 좌표 값 증가 break; } case '1' : { // 데이터가 ‘1’인 경우 maze 배열에 저장 maze[now_Width][now_Height]=1; now_Width++; // 가로 좌표 값 증가 break;} case ' ': { // space bar로 입력된 부분 무시 case '\n': { // enter 입력시 배열의 행 변환 now_Width=1; // 가로 좌표 값 초기화 now_Height++; // 세로 좌표 값 증가 break; } }

샘플 파일 저장 Appendix 3. 파일입출력 프로그램 실행방법 생성된 프로젝트 폴더에 샘플파일(data.txt) 복사 샘플파일은 프로젝트 폴더에 복사하여 사용 가능

샘플 파일 입출력 소스코드 실행화면 Appendix 3. 파일입출력 프로그램 실행방법 파일 이름 미로파일 샘플 출력 “data.txt” 입력 미로파일 샘플 출력 10ⅹ10의 내용 출력 출력위치는 1ⅹ1 미로파일 샘플 이외 지역은 1로 채움 Exit 좌표 출력