거북 수학으로 변수 개념 이해하기
수학이야기 2020. 9. 20. 18:52예전에 올린 글 <파이썬으로 거북 수학>을 참고하여 파이썬을 설치한 다음 단계를 위한 글이다. 중학교 2학년에 알맞은 내용이지만 초등 고학년이어도 쉽게 이해할 수 있을 것으로 생각한다.
파이썬(python)으로 거북 수학
이제 코딩 시대가 시작되고 있다. 물론 컴퓨터 전문가는 이미 오래 전부터 코딩을 하고 있었다. 코딩 시대엔 컴퓨터 프로그래밍을 하지 못하면 글을 모르는 것과 마찬가지인 시대를 뜻한다. 우��
suhak.tistory.com
거북 수학으로 함수에서 변수가 하는 일을 이해해 보기로 하자.
아래와 같은 그림을 그리려고 한다.
>>>def tri():
for i in range(3):
t.fd(200)
t.rt(120)
이때 120도는 정삼각형의 외각임을 쉽게 알 수 있다.
이제 정 n각형을 그리는 함수를 만들자. 정 n각형을 그리는 절차는 아래와 같다.
1. 한 변의 길이만큼 움직인다.
2. 한 외각만큼 회전한다.
3. 같은 일을 n번 되풀이한다.
>>>def poly(n): #함수 이름(변수 이름)
for i in range(n): #for ~ in range~ 0부터 시작해서 n-1까지 n번 아래 명령을 실행
t.fd(100)
t.rt(360/n) #모든 다각형은 외각의 합이 360
이제 정삼각형부터 정 12 각형까지 그려 보기로 하자. 단순한 프로그램은 바로 짤 수 있으나 복잡하면 순서도를 그린 다음 코딩하는 편이 낫다.
정 3 각형부터 정 12 각형까지 10번 되풀이해야 한다. 따라서 아래와 같이 for~in range 구문을 써서 함수 poly(n)을 되풀이해서 실행하면 된다.
>>>for i in range(9):
poly(i+3)
참고 파이선 거북 그래픽이지만 기분은 화살촉 모양이 나온다. 그림처럼 거북이가 나타나게 하려면 아래와 같이 입력하여 모양을 바꾸면 된다.>>>t.shape("turtle")또한 앞에 붙이는 't.' 없이 명령을 내리려면 아래처럼 입력하면 된다.>>>from turtle import as *
함수는 변수에 따라 함숫값이 결정되므로 변수만 잘 이해하면 쉽게 다룰 수 있게 된다. (참고: 수학에서 쓰는 함수의 정의) 학교에서 배우는 함수는 변수가 하나다. 하지만 거북에게는 함수에 변수가 하나가 아니라 둘 이상이라도 문제없다. 다변수 함수는 대학에서나 배우지만 그렇다고 중등과정에서 전혀 이해할 수 없는 것은 아니다. 예를 들어 위에 있는 함수 poly(n)은 한 변이 100인 정다각형만 그릴 수 있다. 아래와 같이 정의하여 변의 길이가 len인 정 n각형을 그리는 함수 poly2(n,len)를 만들 수 있다.
>>>def poly2(n,len): #함수 이름(변의 개수, 한 변의 길이)
for i in range(n):
t.fd(len)
t.rt(360/n)