12일 차 교육 내용의 메모를 정리해 본다.
2차원 배열 형태의 과제 풀이가 있었던 것 같다. 섞는 과정에서 배열 Index의 직접적인 교체에 대한 이야기가 나오는 것으로 봐서는 신경쇠약이 과제로 나왔던 것 같다.
2D 게임에서는 Target의 제어를 위해 posX, posY 두 변수를 활용한다.
int posX = 0;
int posY = 0;
형태의 변수를 두어 Target의 위치를 설정한 뒤 이를 배열 index로 지환해 활용한다.
index = WIDTH * posY + posX;
물론 index를 역산해 x, y좌표로 치환할 수도 있다.
숫자 퍼즐을 섞는 경우 각 배열의 index를 직접 교체하지 않는다.
이 경우 실제 이동 조작을 n회 수행해 퍼즐이 섞일 수 있도록 제어 해야 된다.
단순 index 교체는 실제 게임에서 발생 되지 않는 대각선 교체로 인해 섞은 결과 데이터의 오류가 발생 될 수 있다.
#include<conio.h>를 이용한 consol상에서의 키 입력받기
- kbhit(); 입력 버퍼에 값이 있는지를 확인할 수 있는 함수로 값이 있으면 1, 없으면 0 반환
- getch(); 입력 버퍼에서 문자 1개를 가져온다. 안에 저장값을 꺼내오는 move의 개념이다.
Enter없이 키 입력을 받아 화면을 갱신처리 하는 경우에 사용한다.
char 는 숫자로 저장되어 문자로 출력됨
switch문에서 case 'a': , case 'A': 형태로 사용이 가능 하다.
Sort에 대한 정보 확인해 보기
이상과 같은 내용이 적혀 있었고, 다시 보니 과제 풀이가 있었고, 과제 중 키 입력을 통한 정보 갱신 처리를 하는 방식이 설명 된거 같다. 아직 1차원 배열을 2차원으로 치환해 사용 하는 듯 싶다. 마지막에 sort 에 대한 정보 확인은 앞으로 정렬 알고리즘에 대한 교육이 있어 선행 교육을 과제로 내준것 같다.
댓글 없음:
댓글 쓰기