ê°•í�¬ê²½ì�´ 4ì�¼ê°„ì—� 걸ì³� 수행한 단기 프로ì �트.
ìž�료구조1ì�˜ ê³¼ì œë¡œ RandomWalkê°€ 나오는 것ì�„ ë³´ê³ ë°”í€´ë²Œë ˆì�˜ 움ì§�ì�„ 그래픽으로 나타내기로 ê²°ì •.
----
----
ìž�료구조1ì�˜ ê³¼ì œë¡œ RandomWalkê°€ 나오는 것ì�„ ë³´ê³ ë°”í€´ë²Œë ˆì�˜ 움ì§�ì�„ 그래픽으로 나타내기로 ê²°ì •.
----
----
1. 목ì � ¶
오랜만� 코딩.
심심풀�.
ì•„ì§� 윈ë�„ìš° 프로그래ë°�ì—� ì�µìˆ™í•˜ì§€ 못한 후배들ì—�게 윈ë�„ìš° 프로그래ë°�ì�˜ 재미를 ì„ ì‚¬.
심심풀�.
ì•„ì§� 윈ë�„ìš° 프로그래ë°�ì—� ì�µìˆ™í•˜ì§€ 못한 후배들ì—�게 윈ë�„ìš° 프로그래ë°�ì�˜ 재미를 ì„ ì‚¬.
2.1. 3ì›” 19ì�¼ í† ìš”ì�¼ ¶
진행시간: 2시간
모ë‘�ê°€ ì§‘ë¶€ì— í‹°ë¥¼ 가서 혼ìž� 너무ë�„ 심심했기 때문ì—� 시간나 때워보ìž�ë�¼ëŠ” ìƒ�ê°�으로 ë¬´ìž‘ì • 코딩.
ë¨¼ì € ë°”í€´ë²Œë ˆ 그림 ë¨¼ì € ê·¸ë ¸ë‹¤.
rkdBug.bmp
ì°½í�¬ê¸°ì�˜ ê³ ì •ê³¼ 메뉴와 ìƒ�태바를 ì—†ì• ê³ ë‚˜ì„œ ì�¼ë‹¨ ë°”í€´ë²Œë ˆ 그림ì�„ 불러와서 ë·°ì—� ê·¸ë ¤ë´„. 잘 ê·¸ë ¤ì§„ë‹¤.
CBugí�´ëž˜ìŠ¤ë¥¼ ìƒ�성하여 ë°”í€´ë²Œë ˆì�˜ 움ì§�ìž„ì�„ 나타내는 멤버함수(Move)와 ë°”í€´ë²Œë ˆì�˜ 위치와 ë°©í–¥ì�„ 나타내는 멤버변수(CPoint position, int direction)를 ìƒ�성.
다í��ì—�서 CBug타입ì�˜ 멤버 변수를 ìƒ�성한다. ê·¸ë¦¬ê³ ë·°ì—�서 방향키ì�˜ 키ì�´ë²¤íЏ(OnKeyDown)를 받으면 다í��ì�˜ CBug 타입ì�˜ 멤버 변수ì�˜ Move함수를 í˜¸ì¶œí•˜ê³ ë³€ê²½ë�œ positionê³¼ directionì�„ OnDrawì—�서 받아서 알맞ì�€ 그림ì�„ 잘ë�¼ë‚´ì„œ ë·°ì—� 그린다.
다í��ì—� RandomWalking함수를 ì œìž‘í•˜ê³ ë·°ì—�서 스페ì�´ìŠ¤ë°”ì�˜ 키ì�´ë²¤íŠ¸ê°€ ì�¼ì–´ë‚˜ë©´ 0.3ì´ˆì�˜ 타ì�´ë¨¸ê°€ ìƒ�성(OnTimer)ë�˜ì–´ RandomWalking함수를 0.3마다 í˜¸ì¶œí•˜ê³ ë³€ê²½ë�œ 위키와 방향대로 ë·°ì—� ê·¸ë ¤ì¤€ë‹¤.(OnDraw) 다시 스페ì�´ìŠ¤ë°”ë¥¼ 누르면 움ì§�ìž„ì�„ 멈춘다.
2.2. 3ì›” 21ì�¼ 월요ì�¼ ¶
진행시간: 1시간 30분
CTileí�´ëž˜ìŠ¤ë¥¼ ìƒ�성하여 ë°”í€´ë²Œë ˆê°€ ë°Ÿì�€ 횟수를 나타내는 frequencyë�¼ëŠ” 멤버함수를 ìƒ�성. 다í��ì—�서 CTile타입ì�˜ ë°°ì—´(tile)ì�„ ìƒ�성하였다.
스페ì�´ìŠ¤ë°”ë¥¼ 누르면 tileë°°ì—´ì�˜ ëª¨ë“ frequencyê°€ 0ì�´ë�˜ê³ 처ì�Œ ë°Ÿì�€ 타ì�¼ì�˜ 갯수(numberOfVirginTile)ê°€ ì´� 타ì�¼ì�˜ 숫ìž�와 같아진다. ë°”í€´ë²Œë ˆê°€ 타ì�¼ì�„ ë°Ÿì�„ 때마다 ê·¸ 타ì�¼ì�˜ frequency는 ëŠ˜ì–´ë‚˜ê³ , frequencyê°€ 0ì�¸ 타ì�¼ì�„ 밟았ì�„ 경우 numberOfVirginTileì�€ ì¤„ì–´ë“ ë‹¤.
타ì�´ë¨¸ì�˜ 주기마다 ë°”í€´ë²Œë ˆëŠ” 움ì§�ì�´ê³ ê·¸ 움ì§�임과 ê°� 타ì�¼ì�˜ 빈ë�„수를 ë·°ì—� ê·¸ë ¤ì¤€ë‹¤. 종료조건ì�€ 스페ì�´ìŠ¤ë°”ì�˜ 키ì�´ë²¤íŠ¸ì™€ ëª¨ë“ íƒ€ì�¼ì�„ ì �ì–´ë�„ 한번씩 밟았ì�„ 경우(numberOfVirginTile == 0)ì�´ë‹¤.
2.3. 3ì›” 22ì�¼ 화요ì�¼ ¶
진행시간: 20분
다í��ì—� TotalNumberOfMovement변수를 ìƒ�성하여 ë°”í€´ë²Œë ˆê°€ 움ì§�ì�¼ 때마다 ëŠ˜ë ¤ì¤€ë‹¤. ê·¸ë¦¬ê³ í”„ë¡œê·¸ëž¨ì�´ ì •ìƒ�종료 ë�˜ì—ˆì�„ 때(스페ì�´ìŠ¤ë°”ì—� ì�˜í•œ 종료는 ì •ìƒ�종료가 아니다.) 메세지 박스로 ê·¸ ê°’ì�„ ì¶œë ¥í•œë‹¤.
4. 프로ì �트ì�˜ ë¬¸ì œì � ¶
프로ì �트 진행시 ì§‘ì¤‘ë ¥ì�˜ 부족으로 너무 ë§Žì�€ 시간ì�´ ê±¸ë ¸ë‹¤.
너무 쉬운 프로ì �트여서 ì–»ì�€ 게 별로 없었다.
너무 쉬운 프로ì �트여서 ì–»ì�€ 게 별로 없었다.
5.1. 프로그램 사용법 ¶
방향키로 ë¨¼ì € 시작ì �ì�„ íƒ�한다. 시작ì �ì�„ íƒ�한 후 스페ì�´ìŠ¤ë°”ë¥¼ 눌러 ëžœë�¤ì›Œí�¬ë¥¼ 진행한다. ì •ì§€ë¥¼ ì›�í• ê²½ìš° 스페ì�´ìŠ¤ë°”ë¥¼ 다시 누른다.
5.2. 다운로드 ¶
실행파�:
rkdRandomWalk.exe
rkdRandomWalk.zip
----
프로ì �트분류 RandomWalk ê°•í�¬ê²½
기왕하는거 비주얼스튜디오 안 깔린ë�°ì„œ í• ìˆ˜ 있게 해주지.ã…¡ã…¡;
소스파ì�¼: 프로ì �트분류 RandomWalk ê°•í�¬ê²½









