11월, 2021의 게시물 표시

파이썬 예제 (미로 생성)

이미지
개요 이번엔 Python, PyQt5를 이용해 랜덤 미로 생성기 (Maze Generator) 를 만들어 보았습니다.  자세한 내용은 소스코드 분석을 참조하기 바라며, 동작방식은 아래와 같습니다. 화면에 표시되는 위젯(윈도우)을 15x15 크기로 잘라, 작은 격자 사각형을 2차원 리스트에 저장 해 둡니다. 미로 생성이 시작되면 현재 격자의 행,열에서 이동가능한 방향 (상, 하, 좌, 우)을 랜덤으로 선택해 이동합니다. (단, 이미 방문한 곳이 아닌 경우, 재귀호출 , Push Stack ) 만약 더 이상 이동가능한 방향이 없는 경우는 재귀호출의 스택이 풀리며 ( Pop Stack ) 퇴각 검색 ( Backtrack )이 진행되고, 이동가능한 방향이 있는지 다시 찾는 원리로 모든 격자를 방문하게 됩니다.   15 X 15 크기의 랜덤 미로 생성. (사이즈 변경가능) DFS (Depth First Search), 재귀호출을 이용해 구현. 미로 진행 방향에 따른 벽 생성 및 벽 삭제. (상,하,좌,우)  

SW 마이스터고 입학을 축하합니다.

안녕하세요. 오션코딩학원장 김주원 입니다.    저희 학원에는 입시반(SW특기자 전형등)을 운영하지 않지만, 고입, 대입, 편입 등을 준비하기 위해 수업을 듣는 학원생은 계십니다. 왜냐하면 프로그래밍을 공부하는 수업내용이 곧 입학시 면접이나 시험문제와 연관되기 때문입니다. 올해도 3명의 중3 학원생이 2022학년도 SW마이스터고 입학을 지원했었습니다. 이 중 2명의 학원생은 각각 대덕, 부산 소프트웨어 마이스터고 에 합격했습니다. 정말 축하드리고, 앞으로 더욱 성장하여 큰 꿈을 펼치길 기대합니다. 저는 학원 수업만 집중해 진행했는데 두 학생 다 여러가지 스스로 잘 준비해 좋은 결과가 있었습니다. 다만, 1명은 서류전형에서 탈락해 아직도 너무 아쉬운 마음이 듭니다. 봄부터 무더운 여름에도 꾸준히 저와 공부하며 실기면접도 준비해온 학생인데, 면접의 기회조차 주어지지 않아 아쉬움이 더욱 큽니다. 하지만, 프로그래밍에 관심이 있다면 얼마든지 수시, 정시를 준비해 원하는 대학의 컴퓨터 공학부에 지원하면 됩니다.   마지막으로, 미래에 프로그래밍을 직업 으로 삼고자 하는 분들께 몇 가지 조언을 하고 싶습니다.  개인적인 의견이므로 참조만 해주세요.   1. 좋아하는 일이 맞는지 잘 생각해 보세요. (세상은 넓고 할 일은 많습니다.) 2. C++은 꼭 공부하세요. (파이썬을 쓰더라도) 3. 영어, 수학은 개발자의 당연한 기초 지식입니다. 여담으로 제가 프로그래밍을 좋아하는 이유 중 하나는 역사가 짧고, 변화가 빠른 학문이기 때문입니다. 수학, 과학 등은 기원전부터도 존재해 왔지만 (이미 기본이 완성, 큰 변화 X) 인류가 컴퓨터를 본격적으로 활용하기 시작한 시기는 불과 30~40년 전 입니다. 하지만 그 짧은 기간동안 엄청난 변화와 혁신을 이끌어 왔으며, 현재 진행형이기 때문에 더욱 매력적이 아닌가 합니다. 감사합니다.

이 블로그의 인기 게시물

Qt Designer 설치하기

C++ 예제 (소켓 서버, 이미지, 파일전송)