5/8(토) 5-2차시 피타고라스의 정리, 내장함수 예시

 

자, 마지막 과제를 향하여 갑시다!!!!!

 

 

 

 

 

아래의 그림은 취미로 피겨스케이팅을 하는 피겨왕 김터틀의 모습입니다.

이러한 경기장 모습은 어떻게 만들 수 있을까요?

아래의 코드를 봅시다.

beginxyz; item=6 집합 { 원(0, 0, 1, z+15) && z<8 ; 0 } 집합 { 원(0, 0, 1, z+17) && z<8 ; 16 }

 

 

 

 

자, 그러면 오늘의 하이라이트!

[ 피타고라스의 정리 ]

 

뜨든!! 그 이름도 유명한 피타고라스의 정리입니다.

피타고라스 정리에 의해 x*x + y*y <= 100 을 만족하는 점( x, y )들을 다 모으면 어떤 모양이 될까요?

터틀크래프트에서의 함수 sqrt( x, y )는 x*x + y*y 의 제곱근의 값을 뜻합니다.

( sqrt( x, y ) = x*x + y*y 의 제곱근의 값 // 주의 : sqrt( 9 ) 는 그냥 9의 제곱근입니다. ) 

구체적인 예제들을 실행시켜보며 이해해 봅시다.

다음 명령은 무엇을 그릴까요 ?

beginxyz D = sqrt( x, y ) 집합 { D <= 10 && z<5 }

 

 

 

 

위의 명령은

집합 { sqrt( x, y ) <= 10 && z<5 } ,

집합 { x*x + y*y <= 100 && z<5 } 와도 같은 명령입니다.

피타고라스 정리에 의해 x*x + y*y <= 100 을 만족하는 모든

( x, y ) 들의 모임 (집합) 은 원점에서 거리가 10 이하인 점입니다.

우리가 코딩하는 터틀크래프트는 3차원 세계이기에 (x, y, z)으로 좌표가 주어지는데, x와 y에 대해서만 식을 작성하면 z 값에 상관없이 x*x+y*y <=100이 성립하기만 하면 모두 집합 { sqrt( x, y ) <= 10 } 에 들어갑니다.

하나를 더 실행시켜봅시다.

beginxyz 집합{ sqrt( x, y ) <= 30 && 5<=z && z<15 } // 집합 { 원(0, 0, 5, 30) && z<=15 } // 맨 밑바닥의 중심이 (0, 0, 5)이고 (5는 5층부터 시작) // 반지름이 30 이고 z<15 인 부분

 

 

[ 과제 4 ] "저장" 버튼 잊지마세요~!

집합 { 원(0, 0, 7, 10) && z< 15 }을

sqrt( x, y )를 이용하여 표현한 코드를 작성하고,

생기는 모양을 주석으로 설명해서 제출해봅시다.

 

수고하셨습니다.