강의실/텍스트기반SW


요즘 파이썬 특강을 하고 있는데...

저희 원에서 한 학생이 다음과 같이 하트를 그리더라구요...^^


저는 하트 그리는게 대수롭지 않다고 생각하고 무심결에 "잘했네~~" 라고 얘기 해 주고 나서 집에 와서 곰곰히 생각하니...


그 각도를 맞추는게 쉽지 않을것 같다는 생각이 들더라구요.^^


작은 아들한테 "파이썬으로 하트 그릴수 있어?" 하고 물어 보니 "먼저 삼각형 각도 체크 해서 올라가다가 그 위에 반원을 두개 그리고 다시 내려오면 되는거 아니야?" 하네요...


나중에 시간되면 한번 그려 보라고 이야기 해 보기는 했지만 이 학생이 이 하트를 어떻게 그렸는지 무척이나 궁금해 지더라구요...


그래서 그 학생의 소스를 살짝 훔쳐 보았네요.^^


학생의 소스


 

import turtle

t = turtle.Turtle()

wn = turtle.Screen()

wn.title("star")

wn.bgcolor("black")  #바탕화면 색상을 black 로 칠한다.

t.begin_fill()            #도형의 안을 색칠할 준비를 한다.

t.color("red")           #도형의 펜의 색상은 red 색상으로 준비한다.

t.left(45)                #펜의 각도를 왼쪽으로 45도 회전한다 

t.forward(200)         #200 만큼 전진한다

t.circle(73,221.37)     #반지름이 73 인 호를 221.37 만큼 그린다.   

t.left(180)               #펜의 각도를 왼쪽으로 180도 회전한다.

t.circle(73,221.37)     #반지름이 73 인 호를 221.37 만큼 그린다.

t.forward(200)         #200 만큼 전진한다

t.end_fill()



이 결과물은 다음과 같이 이쁘게 나오네요.




지금 생각하니 t.circle(73,221.37)  여기에서 73 의 크기와 221.37 의 호의 길이를 어떻게 구했는지 엄청 궁금해 지더라구요.


학생에게 물어 보니 올라가는 각도와 크기를 계산해서 나왔다고 하네요.


제가 단순히 선을 그리고 원을 그리는 명령만을 가르쳐 주어도...


각도를 계산해서 하트를 그릴 수 있는 학생의 능력에 감탄을 하게 되면서도...


똑같은 언어를 배운다고 해도 그 사람이 가지고 있는 지식으로 어떤 결과물이 나타나는가 하는 것을 여실히 보여주는 단적인 예인것 같네요.





 


이 장소를 Daum지도에서 확인해보세요.
인천 서구 당하동 1028-2 장원프라자 502호 | 원당컴퓨터학원
도움말 Daum 지도
3 0
  • 몰드원 2018.01.12 16:18 신고    

    날씨가 무척이나 춥네요~
    감기 조심하시고 포스팅 잘 보고 갑니다~^^

  • 버블프라이스 2018.01.13 05:33 신고    

    파이썬의 터틀을 이용한 하트 만들기- 생소한 분야이지만,
    학생분이 그린 하트를 보니, 정말 잘 그렸다는 생각이 듭니다^^
    한파 날씨가 어제까지 이어지다 오늘로 강추위는 풀린다고 합니다. 건강관리 잘하시길 바랍니다.

  • 핑구야 날자 2018.01.13 07:05 신고    

    하트가 참 예쁘네요