프로젝트/토이프로젝트

[토이프로젝트] 쌓기나무 프로그램 구현 (계획수립)

syveany 2024. 11. 24. 23:43

쌓기나무 프로그램 구현 (계획수립)

 

~ 목차 ~

1. 계획수립
2. 중간보고
3. 최종결과물

 

저는 사실.. 초등교육을 전공하고 있는 막학기 학부생입니다.

지금 소프트웨어와 초등교육이라는 전공 강의를 듣고 있는데 과제로 교과교육 적용을 위한 소프트웨어 개발이라는 과제가 나왔지 뭡니까.

이론 공부만 하다가 오랜만에 코드를 만질 기회가 오니 살짝 설렜습니다.

 

과제는 초등학교 교육과정 내의 소재를 하나 골라서 관련된 소프트웨어를 개발하는 것입니다. 

무엇을 개발할지 고민하다가.. 저는 쌓기나무 프로그램을 구현해보기로 했습니다.

 

쌓기나무는 6학년 2학기 수학에서 나오구요.. 해당 성취기준은 다음과 같습니다.

 

[6수02-10] 쌓기나무로 만든 입체도형을 보고 사용된 쌓기나무의 개수를 구할 수 있다.
[6수02-11] 쌓기나무로 만든 입체도형의 위, 앞, 옆에서 본 모양을 표현할 수 있고, 이러한 표현을 보고 입체도형의 모양을 추측할 수 있다.

 

이러한 성취기준들을 바탕으로 아래와 같은 질문들을 합니다.

 

이러한 문제를 풀려면 위, 앞, 옆에서 본 모양을 바탕으로 쌓기나무가 어떻게 생겼는지를 자유자재로 상상할 수 있어야 합니다.. 쉽지 않죠

 

실제 쌓기나무를 사용해서 쌓을 수도 있지만, 막상 쌓아보면 시점에 따라서 애매하게 보일 때가 많습니다. 혼란이 가중될 수 있습니다.

 

그래서!

쌓기나무를 3D 프로그램으로 쌓은 뒤 학생 스스로 이리저리 돌려보면서 모양을 파악하고 감을 잡을 수 있게 하고 싶었습니다.

 

이러한 프로그램이 기존에 있나 찾아봤더니.. 역시나 있더라구요 (https://www.algeomath.kr/algeo/algeomath/poly/make.do)

 

아 너무 훌륭합니다. 원하는 기능들이 다 들어있습니다.

 

이걸 내가 구현하는 게 의미가 있을까..라는 근본적인 고민이 들었습니다.

 

여기까지의 계획을 교수님께 보고한 결과...

 

일단 구현해보는 것 자체에 의미가 있을 것이고, 기존 사이트에는 없는 기능을 추가해보는 것도 좋겠다는 말씀을 해주셨습니다.

(알고리즘이 떠오르지 않는다면 주제를 바꾸는 것도 좋을 것 같다는 조언과 함께..)

 

사실 확신이 없었습니다. 머릿속에는

3D 좌표공간 구축 → 마우스 인식해서 1x1x1 좌표공간만큼 표시 → 마우스 클릭 시 해당 좌표공간에 색깔 넣기

정도의 계획밖에 없었고, 이게 파이썬으로 되는 작업일지도 확신하지 못했습니다.

 

그냥 바위에 계란치기로 배워가지 뭐..라는 생각으로 시작하기로 했습니다.

 

 

아무튼 세 줄 요약을 하면 다음과 같습니다

 

- 목표: 직접 쌓기나무를 쌓아서 이리저리 돌려가며 어떤 모양을 띄는지 관찰할 수 있는 프로그램 제작

- 방법: 파이썬 

- 알고리즘 구상: 3D 좌표공간 구축 → 마우스 인식해서 1x1x1 좌표공간만큼 표시→ 마우스 클릭 시 해당 좌표공간에 색깔 넣기

 

이번 주 중으로 대충 구현을 해볼 계획입니다.

 

잘 되길 바라며..