1 00:00:01,735 --> 00:00:03,407 - Như vậy, ta đã tạo ra một biến thật tuyệt vời 2 00:00:03,407 --> 00:00:05,601 cho kích thước mắt của Winston. Nó 3 00:00:05,601 --> 00:00:07,854 thực sự hữu ích vì đã giúp ta tiết kiệm rất nhiều công đánh máy 4 00:00:07,854 --> 00:00:10,222 khi muốn thay đổi kích thước đôi mắt của Winston. 5 00:00:10,222 --> 00:00:12,266 Hãy nhớ rằng, trước kia ta phải gõ cùng một số 6 00:00:12,266 --> 00:00:14,181 tới tận bốn lần mỗi khi muốn 7 00:00:14,181 --> 00:00:15,981 thay đổi kích thước mắt. 8 00:00:15,981 --> 00:00:17,815 Nhưng ta có thể sử dụng các biến để thay thế giá trị 9 00:00:17,815 --> 00:00:19,278 khi chúng không giống nhau hay không? 10 00:00:19,278 --> 00:00:21,693 Giống như, nếu tôi muốn di chuyển Winston một chút thì sao? 11 00:00:21,693 --> 00:00:23,864 Tôi có thể thay đổi từng tọa độ 'x' này nhưng 12 00:00:23,864 --> 00:00:26,013 dù sao chúng cũng không giống nhau nên không thể 13 00:00:26,013 --> 00:00:27,904 chỉ cần thay thế tất cả bằng một biến nào đó được. 14 00:00:27,904 --> 00:00:29,158 Nhưng gượm chút. 15 00:00:29,158 --> 00:00:30,830 Khi tôi gán một giá trị cho một biến 16 00:00:30,830 --> 00:00:32,792 Tôi có thể sử dụng biến đó y hệt như thể 17 00:00:32,792 --> 00:00:33,976 đó là một số. 18 00:00:33,976 --> 00:00:37,239 Có nghĩa là, tôi có thể sử dụng các biến trong biểu thức toán học. 19 00:00:37,239 --> 00:00:38,260 Vậy nếu như thế này thì sao? 20 00:00:38,260 --> 00:00:40,954 Hãy tạo một biến cho vị trí 'x' của Winston. 21 00:00:40,954 --> 00:00:44,656 Gọi nó là 'var x', đơn giản vừa đủ. 22 00:00:44,656 --> 00:00:46,132 Được rồi, bây giờ hãy thiết đặt giá trị của 23 00:00:46,132 --> 00:00:48,059 tọa độ 'x' cho khuôn mặt của Winston. 24 00:00:48,059 --> 00:00:51,403 Như vậy, khuôn mặt của anh ấy đang được vẽ tại tọa độ 'x' là 200. 25 00:00:51,403 --> 00:00:55,332 Nên ta sẽ nói 'var x' nhận giá trị 200. 26 00:00:55,332 --> 00:00:57,636 Bây giờ ta có thể thay thế số này bằng 27 00:00:57,636 --> 00:01:00,283 biến x và khi thay đổi giá trị của 'x' 28 00:01:00,283 --> 00:01:02,454 khuôn mặt của Winston di chuyển 29 00:01:02,454 --> 00:01:05,153 nhưng mắt hay miệng thì không. 30 00:01:05,153 --> 00:01:08,624 Vì vậy, để khắc phục điều đó, ta sẽ xác định vị trí của 31 00:01:08,624 --> 00:01:13,624 mắt và miệng tương quan với vị trí của khuôn mặt. 32 00:01:14,174 --> 00:01:16,786 Như vậy, tọa độ 'x' sẽ là tâm 33 00:01:16,786 --> 00:01:20,617 của tất cả các hình elip, nên vậy khuôn mặt của anh ấy sẽ được vẽ tại 34 00:01:20,617 --> 00:01:24,658 tọa độ 200, và trước tiên hãy thực hiện với mắt trái. 35 00:01:24,658 --> 00:01:26,492 Như vậy, hình elip này là mắt trái và ta có thể thấy 36 00:01:26,492 --> 00:01:29,557 rằng nó được vẽ ở tọa độ 150, 37 00:01:29,557 --> 00:01:33,388 Vì vậy, ngay tại đây, đó là 150. 38 00:01:33,388 --> 00:01:37,556 Và tôi biết rằng 150 kém 200 50 đơn vị. 39 00:01:37,556 --> 00:01:42,556 Vì vậy, mắt trái phải ở bất cứ vị trí nào của khuôn mặt trừ đi 50 đơn vị. 40 00:01:42,653 --> 00:01:45,439 Nên nó sẽ 'x', chính là vị trí của khuôn mặt, 41 00:01:45,439 --> 00:01:47,970 trừ đi 50. 42 00:01:47,970 --> 00:01:50,407 Và bây giờ nếu thay đổi giá trị tọa độ 'x' của Winston, 43 00:01:50,407 --> 00:01:53,230 mắt anh ấy di chuyển cùng khuôn mặt. 44 00:01:53,230 --> 00:01:54,495 Hãy làm như vậy với những phần khác. 45 00:01:54,495 --> 00:01:58,048 Mắt phải của anh ấy đang được vẽ ở tọa độ 300, như ta thấy, 46 00:01:58,048 --> 00:02:01,438 ở đây là 300. 47 00:02:01,438 --> 00:02:05,885 Và 300, ta biết rằng, nó lớn hơn 200 là 100 đơn vị. 48 00:02:05,885 --> 00:02:10,053 Vì vậy, mắt phải nên ở bất cứ vị trí nào của khuôn mặt cộng thêm 100. 49 00:02:10,053 --> 00:02:12,746 Vậy đó là 'x' cộng 100. 50 00:02:12,746 --> 00:02:14,255 Và giờ ta chỉ còn miệng thôi. 51 00:02:14,255 --> 00:02:16,786 Miệng đang được vẽ ở tọa độ 250. 52 00:02:16,786 --> 00:02:19,252 Ở đây, ta có 250, 53 00:02:19,252 --> 00:02:23,082 và 250 là 200 cộng 50. 54 00:02:23,082 --> 00:02:26,132 Vì vậy, nó sẽ ở bất cứ vị trí nào... Ồ, đó là số 5 55 00:02:26,132 --> 00:02:31,032 và dù khuôn mặt ở đâu, 'x' cộng 50. 56 00:02:31,032 --> 00:02:33,238 Và bây giờ, ta sẽ bỏ qua những nét vẽ nguệch ngoạc này, 57 00:02:33,238 --> 00:02:38,126 Bất cứ khi nào thay đổi giá trị của 'x', nó sẽ di chuyển toàn bộ khuôn mặt. 58 00:02:38,126 --> 00:02:39,600 Yay! 59 00:02:39,600 --> 00:02:41,109 Bây giờ trước khi kết thúc, bạn nên biết thêm 60 00:02:41,109 --> 00:02:42,735 một đôi điều về các biến. 61 00:02:42,735 --> 00:02:45,893 Khi tạo một biến bằng cách sử dụng 'var x' 62 00:02:45,893 --> 00:02:47,077 ta sẽ gán một giá trị cho nó 63 00:02:47,077 --> 00:02:48,586 bao nhiêu lần tùy thích. 64 00:02:48,586 --> 00:02:53,068 Vì vậy, sau khi gán cho 'x' giá trị 198, tôi 65 00:02:53,068 --> 00:02:55,822 gán cho x nhận giá trị 300, hoặc 66 00:02:55,822 --> 00:02:59,468 x nhận giá trị 150. 67 00:02:59,468 --> 00:03:01,267 Và từ đó trở đi, máy tính sẽ xử lý 'x' 68 00:03:01,267 --> 00:03:03,681 theo bất cứ giá trị nào ta gán nó lần sau cùng, 69 00:03:03,681 --> 00:03:05,353 vì vậy trong trường hợp này, là 150. 70 00:03:05,353 --> 00:03:08,534 Nhưng bạn chỉ cần gõ 'var' một lần cho mỗi biến. 71 00:03:08,534 --> 00:03:12,783 Nếu, ở đây, ta lại gõ 'var x' nhận giá trị 150, 72 00:03:12,783 --> 00:03:15,605 nghĩa là nó tạo ra một biến hoàn toàn mới có tên 'x', 73 00:03:15,605 --> 00:03:18,496 xóa bỏ hoàn toàn biến x cũ trong tiến trình. 74 00:03:18,496 --> 00:03:21,270 Vì vậy, tất cả các biến này sẽ biến mất trong dumpster. 75 00:03:21,270 --> 00:03:22,736 Và sau đó, máy tính sẽ 76 00:03:22,736 --> 00:03:24,335 chỉ sử dụng biến mới. 77 00:03:24,335 --> 00:03:25,812 Đôi khi bạn có thể làm điều này 78 00:03:25,812 --> 00:03:27,890 mà không có chuyện gì ghê gớm lắm xảy ra, 79 00:03:27,890 --> 00:03:29,773 nhưng tôi không khuyến khích nó. 80 00:03:29,773 --> 00:00:00,000 Bây giờ ta sẽ thử làm điều đó một lần, 'var x' nhận giá trị 150.