Return to Video

변수 표현 (Video Version)

  • 0:02 - 0:03
    Winston으로 다시 돌아와 봅시다
  • 0:03 - 0:07
    여러분은 지금 Winston의 위치를 나타내는
  • 0:07 - 0:09
    변수 x, y를 가지고 있어요
  • 0:09 - 0:11
    자, 우리는 Winston을 위로 올렸다가 내려오게 할 수 있고
  • 0:11 - 0:14
    작은 Winston 파티를 가져볼까요?
    와!
  • 0:14 - 0:16
    멋지죠?
  • 0:16 - 0:19
    진행하기에 앞서 이 코드를
    한번 살펴보도록 하죠
  • 0:19 - 0:22
    여기 위쪽에 Winston 얼굴의 가운데 위치인
  • 0:22 - 0:25
    변수 x, y를 가지고 있고
  • 0:25 - 0:29
    여기에서 그의 얼굴을 위한 타원을
    그릴 때 이를 사용하고 있죠
  • 0:30 - 0:34
    그리고 그의 얼굴의 중심으로 부터
    눈과 입의 위치를 정합니다.
  • 0:34 - 0:39
    눈의 위치를 이동하려면
    변수 x, y에 값을 더하거나 빼면 됩니다
  • 0:39 - 0:43
    눈은 50 픽셀(pixels), 100 픽셀 떨어지게 되어있죠
  • 0:44 - 0:45
    예를 들면 입은
  • 0:45 - 0:49
    중심에서 오른쪽으로 50픽셀
  • 0:49 - 0:54
    그리고 아래쪽으로 40픽셀 이동해 있습니다
  • 0:56 - 1:00
    그러면 나머지는 어떠한 값들이 저장되는지 볼게요
  • 1:00 - 1:03
    이런식으로 각 줄 마다 살펴보면
  • 1:03 - 1:07
    데이터를 바꾸지 못하도록 한
    숫자를 부르고 있는 것을 볼 수있어요
  • 1:08 - 1:11
    이 숫자들은 변수가 아닌 숫자 그대로이거나
  • 1:11 - 1:14
    어떤 변수값에 따라 값이 정해지는 숫자입니다
  • 1:15 - 1:18
    자 한번 우리가 만든 타원 얼굴을 봅시다!
  • 1:18 - 1:22
    여기서는 너비가 300, 높이가 300으로 지정되어있네요
  • 1:23 - 1:27
    faceSize같이 이를 대신할 변수를 만들 수 있습니다
  • 1:27 - 1:33
    그러면 faceSize = 300라고 쓰고
    여기에서 faceSize를 전달할 수 있습니다
  • 1:33 - 1:36
    그러면 지금부터는 300이라는 값이 전달될 것입니다
  • 1:37 - 1:41
    좋아요, 계속 해보죠
  • 1:42 - 1:45
    여기에서는 모두 x, y, eyeSize를 사용하고 있습니다
  • 1:45 - 1:49
    하지만 여기 입 부분에는
    너비와 높이를 각각
  • 1:49 - 1:51
    150, 150으로 설정되어있습니다
  • 1:51 - 1:56
    이제 mouthSize= 150을 써서
    mouthSize 변수를 만들수 있고
  • 1:57 - 2:00
    여기에서 mouthSize 를 전달할 수 있습니다
  • 2:00 - 2:02
    그러면 변수의 값은 150이기 때문에
  • 2:02 - 2:04
    150이라는 값이 전달되게 됩니다
  • 2:05 - 2:10
    좋아요 우리는 이제 faceSize라는
    간단하게 바꿀 수 있고
  • 2:11 - 2:16
    mouthSize와 eyeSize 값도 이처럼
    간단하게 바꿀 수 있다는 것을
  • 2:17 - 2:19
    알아보았습니다.
  • 2:19 - 2:21
    좋아요 멋지네요
  • 2:21 - 2:24
    하지만 몇몇은 제가 도저히 좋아할 수 없네요
  • 2:25 - 2:27
    그러니 그것을 faceSize를 바꿀때 해보도록 하죠
  • 2:29 - 2:34
    얼굴 크기와 관련된 다른 것들도 바꾸고자 해요
  • 2:34 - 2:37
    그럼 만일 faceSize 가 이처럼 매우 작게 만들었다면
  • 2:38 - 2:41
    눈과 입 크기도 작게 만들고 싶을 것입니다
  • 2:41 - 2:44
    만약 얼굴 크기를 원래 크기의 절반으로 만든다면
  • 2:45 - 2:48
    눈과 입의 크기 역시 절반으로 해야할 것입니다
  • 2:48 - 2:53
    그렇지 않으면 눈과 입이 얼굴에 비해
    너무 커지기 때문에 우스꽝스러운 얼굴이 되겠죠?
  • 2:53 - 2:55
    그 값들은 아무런 연관이 없습니다
  • 2:56 - 2:59
    그래서 우리는 어떠한 방법을 사용해서
  • 3:00 - 3:02
    mouthSize와 eyeSize 변수가
  • 3:02 - 3:05
    faceSize 변수와 연동되도록 하고 싶습니다
  • 3:06 - 3:09
    그러면 맨 처음 상태로 우선 되돌려볼게요
  • 3:09 - 3:11
    우리가 하고 자 하는 방법은
  • 3:11 - 3:17
    이 변수들을 faceSize 변수의 값을
    기준으로 하도록 만드는 거에요
  • 3:17 - 3:22
    즉 mouthSize = faceSize/2라고 입력할 수 있습니다
  • 3:22 - 3:24
    우리는 얼굴의 부분을 위해서
  • 3:24 - 3:28
    얼굴크기의 절반을 가져올 거에요
  • 3:28 - 3:30
    만약 여러분이 분수를 잘 모른다면
  • 3:30 - 3:32
    분수에 대해서 공부할 수 있는
  • 3:32 - 3:36
    수많은 동영상들이
    Khan Academy에 있으니 참고하세요
  • 3:36 - 3:41
    그럼 eyeSize를 faceSize/4로 지정합시다
  • 3:41 - 3:44
    완벽하지는 않지만 괜찮네요
  • 3:44 - 3:47
    아 7이 더 좋을 것 같네요
  • 3:47 - 3:49
    지금처럼 처음에 분수를 잘못 정했어도
  • 3:49 - 3:51
    언제든지 나중에 수정할 수 있습니다
  • 3:51 - 3:54
    그 값들이 맞다는 생각이 들때까지
    그 값을 조정하세요
  • 3:54 - 3:58
    좋아요, 이제 여러분이 얼굴의 크기를 다시 바꾸어보면
  • 3:58 - 4:03
    눈과 입의 크기도 다시 설정되고 있는 것이 보이나요?
  • 4:03 - 4:04
    멋지네요!
  • 4:04 - 4:07
    하지만 문제가 있어요
  • 4:07 - 4:09
    눈과 입이 얼굴이 매우 작은 경우에는
  • 4:10 - 4:13
    여전히 얼굴과 어울리지 않게 만들어집니다
  • 4:13 - 4:16
    정확히는 사이즈는 맞지만, 문제는 얼굴과의 거리입니다
  • 4:18 - 4:21
    도대체 무슨일이 일어난 것일까요?
  • 4:21 - 4:24
    우리가 타원이 그려질 위치를 정할때
  • 4:25 - 4:31
    눈은 x를 –50, y를 –50에 위치하도록
    입은 x를 +100, y를 –60로 정했어요.
  • 4:32 - 4:36
    그러므로 심지어 얼굴 크기가 단지 50 픽셀(pixels)이 되더라도
  • 4:36 - 4:41
    여전히 눈은 얼굴과 어울리지 않게
    얼굴의 중심으로부터
  • 4:41 - 4:44
    –50 픽셀 떨어진 위치에 그려지게 됩니다
  • 4:44 - 4:48
    그래서, 우리는 50과 100과 코드의 이런 숫자들을 위해서
  • 4:48 - 4:52
    이들 또한 faceSize의 분수형태로 만들어야 합니다
  • 4:52 - 4:56
    그러면 앞으로 faceSize값을 바꾸게 되더라도
  • 4:56 - 4:58
    눈과 입의 떨어진 정도도
  • 4:58 - 5:01
    또한 같이 바뀌게 될 것입니다
  • 5:02 - 5:05
    그러면 제가 말한 것들을 확인하기 위해서 먼저 눈을 살펴봅시다
  • 5:05 - 5:08
    x – 50, x - 50 픽셀이네요
  • 5:08 - 5:12
    이것은 눈이 얼굴의 중심으로부터 50픽셀
    왼쪽에 위치한다는 것을 말합니다
  • 5:13 - 5:15
    그러면 여기에 실제로 분수값을 사용해 볼게요
  • 5:15 - 5:20
    이 값을 faceSize/6으로 해볼게요
  • 5:20 - 5:22
    그러면 얼굴 크기의 1/6이 되겠죠
  • 5:23 - 5:29
    좋아요
    그 다음으로 50을 faceSize/6으로 해줍시다
  • 5:30 - 5:31
    이제 얼굴의 크기를 바꾸더라도
  • 5:32 - 5:35
    눈이 정확한 위치에 있는 것을 확인할 수 있습니다
  • 5:36 - 5:38
    멋진 눈을 가지고 있구나 Winston!
  • 5:39 - 5:41
    다른 쪽의 눈도 도움이 필요한 것 같네요
  • 5:41 - 5:48
    그럼 100을 얼굴크기의 1/3인
    faceSize/3 으로 바꾸어줍니다
  • 5:48 - 5:53
    그리고 60을 얼굴 크기의 1/5인 faceSize/5로 써줍시다
  • 5:54 - 5:57
    좋아요 이제는 크기를 바꾸어보아도 멋지네요
  • 5:57 - 6:00
    하지만 입은 여전히 문제네요
  • 6:00 - 6:02
    그러면 조금 내려가서 이제는 입을 살펴보도록 하죠
  • 6:02 - 6:07
    이것을 faceSize/6으로 설정하고
  • 6:07 - 6:10
    이 부분은 faceSize/7로 할게요
  • 6:11 - 6:16
    좋아요, 이제 모든 게 완벽하게 끝났습니다
    그럼 이제 확인해보죠!
  • 6:16 - 6:19
    드디어 Winston을 정말 작게 만들 수 있게 되었고
  • 6:19 - 6:22
    여전히 그의 눈과 입이 얼굴안에 있도록 만들었어요
  • 6:23 - 6:27
    저는 Winston이 이것을 정말 좋아할거라고 생각해요
  • 6:27 - 6:28
    좋아요 여러분!
  • 6:28 - 6:30
    지금까지 한 것을 되짚어보도록 하죠
  • 6:31 - 6:33
    맨 윗줄에서 우리는 변수들을 가지고 있고
  • 6:33 - 6:37
    200이라는 값을 한 변수에 저장하는 것으로 시작해서
  • 6:37 - 6:40
    그 다음 mouthSize와 eyeSize 변수들을
  • 6:40 - 6:43
    이 값의 분수의 형태로 연동되게 만듭니다
  • 6:43 - 6:46
    그 결과 만일 faceSize가 200이라면
  • 6:46 - 6:48
    mouthSize는 100일 것입니다
  • 6:48 - 6:50
    하지만 faceSize를 300으로 바꾸면
  • 6:50 - 6:53
    mouthSize는 150으로 변하게 될 것입니다
  • 6:54 - 6:56
    이 값은 이렇게 비례하여 변화합니다
  • 6:57 - 7:00
    내려가서 얼굴과 떨어진 정도를 계산할때
  • 7:00 - 7:01
    역시 분수를 사용하고 있습니다
  • 7:01 - 7:06
    왜냐하면 우리는 떨어진 정도가
    faceSize에 비례하여
  • 7:06 - 7:09
    바뀌기를 원하기 때문입니다
  • 7:09 - 7:10
    우리는 단지 그렇게 되도록 만들었고
  • 7:10 - 7:15
    그래서 다른 모든 값들에 영향을 미치는
    하나의 변수를 가지게 되었습니다
  • 7:15 - 7:18
    우리는 변수와 변수의 표현들을 이용할 수 있게 되었습니다
  • 7:20 - 7:21
    이제는 다른 변수들의 값에
  • 7:21 - 7:24
    변수들이 연동되도록 어떻게 만드는지 이해할 수 있고
  • 7:24 - 7:26
    프로그램에서 더욱 많은 것을 할 수 있을 것입니다
  • 7:26 - 7:30
    기념으로 윈스턴을 크게 만들어봅시다!
  • 7:30 - 7:33
    커져보자 Winston! 계속!
  • 7:34 - 7:39
    멈추지 말고 계에에에속!
Title:
변수 표현 (Video Version)
Description:

more » « less
Video Language:
English
Duration:
07:42

Korean subtitles

Incomplete

Revisions