• 검색 결과가 없습니다.

중고생들을 위한 매스매티카 기초#11:

N/A
N/A
Protected

Academic year: 2021

Share "중고생들을 위한 매스매티카 기초#11:"

Copied!
6
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

중고생들을 위한 매스매티카 기초#11:

오늘의 주제: 나만의 function만들기 -

* 이 영상은 콩글리쉬와 브로큰 잉글리쉬/코리안, 그리고 주변잡음을 포함하고 있습니다.

나레이터: John Lee

학생: 존리

선생님: Jon Lee

* 매스매티카는 무료 로 온라인에서 TRY할 수 있습니다. 자세한 내용은 이 화면 또는 설명에 있는 링크를 참고하세요. - JohnLeeEdu.Tistory.Com/28

두점 사이의 거리

일반적으로 좌표평면에서 두점 (x1, y1)과 (x2, y2)의 거리는 다음과 같다.

거리 = (x2 - x1)2+ (y2 - y1)2

물론 매스매티카는 위와 같은 전통적인 수학적 표현도 알아 듣고 또 나타낼 수도 있지만 오늘은 좀 덜 예뻐도 실수할 확률이 적은 매스매티카 입력문 형태로 표현해보자.

일반 수학적 표현 : abc ⟶ 매스매티카 입력문 표현 : Sqrt[abc]

일반 수학적 표현 : x2⟶매스매티카 입력문 표현 : x^2

일반 수학적 표현도 매스매티카에서 입력이 가능하다. 근데 숙련되지 않으면 좀 귀찮다. 예를 들어서 5 를 입력하고 싶으면 “Control키 + 2” 그리고 나서 “5”를 쳐주면 된다. 또 5

7

를 입력하고 싶으면 “5” 그리고

“Control키 + 6” 그런 다음에 “7”을 쳐주면 된다.

In[1]:= (* 왼쪽은 일반 수학적 표현, 오른쪽은 매스매티카 입력문 표현 *)

2 , Sqrt[2]

Out[1]=

 2 , 2 

In[2]:= (* 뭔가를 보통 소수로 나타내고 싶으면 보통 뒤에 //N 이라고 쳐주면 된다. *)

2 , Sqrt[2] // N

Out[2]=

{ 1.41421, 1.41421}

(2)

In[3]:= (* 왼쪽은 일반 수학적 표현, 오른쪽은 매스매티카 입력문 표현 *)

22, 2^2

Out[3]=

{ 4, 4}

따라서 (x2 - x1)

2

+ (y2 - y1)

2

을 매스매티카 입력문 형태로 다시 쓰면 아래와 같이 된다.

In[4]:= Sqrt[(x2 - x1)^2 + (y2 - y1)^2]

Out[4]=

(- x1 + x2)

2

+ (- y1 + y2)

2

그런데 점(1, 2)와 점(3, 4)사이의 거리를 구하라 같은 문제가 나올 때 마다

In[5]:= Sqrt[(3 - 1)^2 + (4 - 2)^2]

Out[5]=

2 2

위와 같이 숫자를 식에 넣어서 매 번 쳐 주려면 정말 귀찮다. 그래서 그냥 나만의 “거리를 구하는 function”을 만들어 보자.

간단히 말해서 매스매티카에서 function을 만들려면 function이름 쓰고 “[“ 열고 input variable(s) 을

“variable_” 형태로 써주고 “]” 닫은 후 그냥 등호 대신 “:=” 쓰고 원하는 function을 variable을 사용해서 써주면 된다. 해보자.

In[6]:= myfunction[x1_, y1_, x2_, y2_] := Sqrt[(x2 - x1)^2 + (y2 - y1)^2]

In[8]:= myfunction[1, 2, 3, 4]

Out[8]=

2 2

(3)

In[9]:= myfunction[1, 2, 3, 4] == Sqrt[(3 - 1)^2 + (4 - 2)^2]

Out[9]=

True

이번에 (102, 22)와 (33, 45)사이의 거리를 구하라.

No problem!!!

In[10]:= myfunction[102, 22, 33, 45] // N

Out[10]=

72.7324

In[11]:= myfunction

Out[11]=

myfunction

myfunction이 궁금할 때 “?”치고 myfunction해주면 된다. 매스매티카의 모든 명령문 또는 변수들은 이런식으로 “?”치고 그 옆에 쳐주면 정보가 나온다.

In[12]:= ? myfunction

Global`myfunction

myfunction[x1_, y1_, x2_, y2_] := (x2 - x1)2+ (y2 - y1)2

잘 생각해보면 매스매티카의 모든 명령어는 function이다!!! 앞으로 명령어란 말 대신 function이라고 하자.

잘될지는 모르겠지만... Why? 이건 존리의 개인적인 생각인데 기존 function이랑 사용자가 만든 function이랑 헷갈리기 때문에...

(4)

In[13]:= ? Table

Table

[ expr, n ]

generates a list of n copies of expr.

Table

[ expr, { i, i max }]

generates a list of the values of expr when i runs from 1 to i

max

. Table

[ expr, { i, i min

, i

max }]

starts with i

= i min

.

Table

[ expr, { i, i min

, i

max

, di

}]

uses steps di.

Table

[ expr, { i, { i

1, i2,

…}}]

uses the successive values i1, i2,

. Table

[ expr, { i, i min

, i

max }

,

{ j, j min

, j

max }

,

…]

gives a nested list. The list associated with i is outermost. '

복잡한 함수도 나만의 function으로!

In[14]:= mypoly[x_] := x^4 + 3 x^3 + 2 x^2 + x + 1

In[15]:= mypoly[7]

Out[15]=

3536

나만의 function으로 재밌게!

Framed는 뭔가에 박스를 씌워준다. 해보자!

In[16]:= Framed[fdjfdsfdsf]

Out[16]=

fdjfdsfdsf

Rotate는 뭔가를 돌려준다. 해보자!

(5)

In[17]:= Rotate"뱅글뱅글", 90 Degree

Out[17]=

뱅 글 뱅 글

두개를 합쳐서 나만의 function을 만들고 싶다. function안에 haha와 deg를 집어넣으면 haha에다가 박스를 씌워주고 deg만틈 돌려주는 그런 function을 만들자!

In[18]:= myfun[haha_, deg_] := Rotate[Framed[haha], deg Degree]

In[19]:= myfun[{2, 4, 5, 6}, 30]

Out[19]=

{2 , 4 , 5 , 6 }

In[20]:= myfun[Plot[Sin[x], {x, 0, 6}], 15]

Out[20]=

1

2

3

4

5

6

-1.0 -0.5 0.5 1.0

(6)

In[21]:= Tablemyfun , angle, {angle, 0, 90, 30}

Out[21]=

 , , , 

Quiz

#1: 공간상의 두점 (x1, y1, z1)과 (x2, y2, z2) 사이의 거리는 (x2-x1)

2

+ (y2-y1)

2

+ (z2-z1)

2

와 같다.

이것을 function으로 만들어라.

#2: 자연수 N을 넣으면 1부터 N까지 자연수의 합을 구해 주는 function을 만들어라.

* 매스매티카는 무료 로 온라인에서 TRY할 수 있습니다. 자세한 내용은 이 화면 또는 설명에

있는 링크를 참고하세요. - JohnLeeEdu.Tistory.Com/28

참조

관련 문서

원하는 형상의 회로 선을 얻기 위한 목적이나 배선(Interconnection)용 접촉(Contact)을 이루기 위한 구멍(Contact Hole)을 형성하기 위한 용도로 대상

전자교재 개발을 통한 학습의 흥미유발 지식습득의 효율성 증대. ƒ대학

알짜 전지반응식을 쓰고, 그것이 정방향 혹은 역방 향으로 자발적인지 답하시오... 알짜 전지반응식을 쓰고, 그것이 정방향 혹은

전북 공사 광역 전북개발공사 기초 장수한우지방공사 공단 기초 전주시설공단 전남 공사 광역

또한 그들을 위해 봉 사를 제공하거나 재정적으로 도움을 주는 사람들에게도 또한 혜택이 주어진다면 이들의 지원이 이어지는 한 사회적 공익이라는 취지

이 연구에서는 과연 앞으로 조림을 계속해야 되는가에 대한 사회적 의문에 대한 응답과 또한 해야 한다면 왜 해야 하며, 어떻 게 해야 하는 것인가에 대한

모집단위가 학부인 경우 입학 후 해당 학부 내 전공분야 중 원하는 전공을 선택하여야 합니다 단

같이 우측에 진입하는 차량이 있다면 우측차량이 우선 권을 가지고 있으므로 우측차량 모두 지나간 후 진입 하시면 되는데 우측차선의 차량이 좌회전 신호를 넣었