1
00:00:01,004 --> 00:00:05,071
Giờ hãy nói về các điều kiện phức tạp hơn mà ta có thể kiểm tra trong chương trình.
2
00:00:05,071 --> 00:00:08,061
Để minh họa, tôi đã thiết lập khung vẽ trông như một trò chơi cũ đã từng chơi
3
00:00:08,061 --> 00:00:09,348
Foursquare.
4
00:00:09,348 --> 00:00:14,851
Có bốn hình vuông (nó có một cái tên hay) và bạn đứng trong một hình vuông rồi đưa bóng của bạn vào trong các hình vuông khác.
5
00:00:14,851 --> 00:00:18,657
Vậy, ngay bây giờ tôi sẽ vẽ một hình elip tại vị trí con trỏ, như vậy nó giống như một quả bóng
6
00:00:18,657 --> 00:00:23,490
Những gì tôi muốn làm là làm nổi bật hình vuông mà quả bóng đang ở, bằng cách vẽ một hình chữ nhật màu trắng trên nó.
7
00:00:23,490 --> 00:00:29,682
Tôi biết mình cần một mệnh đề IF để làm điều đó, bởi tôi chỉ muốn làm điều đó mỗi khi vượt qua hình chữ nhật đó
8
00:00:29,682 --> 00:00:34,392
Được rồi, vậy hãy bắt đầu bằng cách vẽ hình chữ nhật.
9
00:00:34,392 --> 00:00:39,903
Tôi chỉ cần copy trực tiếp từ đó, nhưng tô cho nó một màu khác, màu trắng chẳng hạn.
10
00:00:39,903 --> 00:00:43,655
Tốt rồi. Giờ, hãy bọc nó trong khối lệnh IF
11
00:00:45,055 --> 00:00:50,501
Bạn thấy đấy, nó tự động điền dấu ngoặc nhọn, nên ta phải di chuyển vào bên trong.
12
00:00:50,501 --> 00:00:53,964
Ok. Vậy khi nào ta muốn hiển thị hình chữ nhật đó?
13
00:00:54,027 --> 00:01:00,891
Chà, ta biết ta muốn làm điều đó khi mouseX nhỏ hơn 200 (mouseX < 200)
14
00:01:00,891 --> 00:01:07,072
Nó đã chạy, nhưng sau đó nếu tôi đi xuống đây, nó vẫn đang hiển thị.
15
00:01:07,072 --> 00:01:10,348
Nên tôi cũng cần kiểm tra mouseY nữa.
16
00:01:10,348 --> 00:01:13,269
Chà, làm cách nào để kiểm tra Cả 2 điều đó?
17
00:01:13,269 --> 00:01:14,938
Đó là lý do tại sao ta có toán tử "VÀ"
18
00:01:14,938 --> 00:01:17,848
Vậy, toán tử And được sử dụng khi ta muốn kiểm tra nhiều điều kiện.
19
00:01:17,848 --> 00:01:26,190
Vậy, ta chỉ cần viết && và sau đó viết điều kiện tiếp theo, "mouseY < 200"
20
00:01:26,190 --> 00:01:30,324
Nó không sáng còn ở đây nữa và nó ở đây! YAYY
21
00:01:30,893 --> 00:01:36,185
Hãy thực hiện với hình vuông tiếp theo, chỉ để chứng minh rằng nó hoạt động.
22
00:01:36,185 --> 00:01:38,682
Được rồi, ta chỉ cần thay đổi một số chỗ.
23
00:01:38,682 --> 00:01:45,394
Thay vào đó hãy lấy hình chữ nhật này, và rõ ràng cần thay đổi điều kiện để nó không sáng lên nữa.
24
00:01:45,394 --> 00:01:52,962
Vậy, lần này, mouseX cần lớn hơn 200 và mouseY vẫn nhỏ hơn 200
25
00:01:52,962 --> 00:01:56,289
Đẹp quá, nhìn kìa!
26
00:01:56,289 --> 00:02:02,252
Được rồi, bây giờ, trong Foursquare, bất cứ khi nào bóng chạm vào các cạnh, bạn biết đấy, những đường này nằm ở giữa và các góc
27
00:02:02,298 --> 00:02:04,511
ta luôn thông báo "EdgeBall"
28
00:02:04,819 --> 00:02:10,392
Vậy, tôi cũng muốn làm điều đó ở đây. Hãy bắt đầu bằng cách viết "EDGE BALLL".
29
00:02:10,392 --> 00:02:14,822
Và hãy viết ở giữa và tô chữ màu đỏ.
30
00:02:14,822 --> 00:02:19,775
Vậy, tôi chỉ muốn nó xảy ra nếu chạm vào cạnh.
31
00:02:19,775 --> 00:02:22,511
Vậy, ta sẽ thêm if
32
00:02:22,511 --> 00:02:25,573
Và chuyển đoạn code này vào bên trong nó
33
00:02:27,173 --> 00:02:29,600
Khi nào tôi muốn nó xảy ra?
34
00:02:29,615 --> 00:02:36,936
Ồ, có các cạnh ở giữa, nên ở giữa là khi mouseX == 200
35
00:02:36,936 --> 00:02:40,404
Được rồi để xem. Tôi có nhận được Edge Ball không ..
36
00:02:40,404 --> 00:02:43,817
Chúng tới rồi! EDGE BALL
37
00:02:43,817 --> 00:02:49,403
OK. Hừm. Vậy, nó hoạt động trong đường kẻ giữa này, ở đây
38
00:02:49,403 --> 00:02:52,130
Nhưng tôi cũng muốn nó hoạt động tại đường kẻ này ở đây nữa.
39
00:02:52,130 --> 00:03:02,820
Vậy, trong trường hợp đó, tôi muốn mouseY == 200, vì đó là đường kẻ giữa.
40
00:03:02,820 --> 00:03:08,315
Ok Hãy xem, nó không hoạt động. Chẳng có gì hoạt động cả.
41
00:03:08,315 --> 00:03:11,150
Ow, có 1 thứ chạy được, tại chính giữa tâm điểm.
42
00:03:11,150 --> 00:03:19,034
Vâng, đó là bởi ta đã sử dụng toán tử VÀ, vì vậy nó sẽ chỉ thực hiện nếu cả hai điều kiện này là đúng, và nó sẽ chỉ xảy ra ở tâm điểm.
43
00:03:19,034 --> 00:03:22,104
Vậy, những gì tôi thực sự muốn nói là, EITHER (HOẶC) một trong những điều này đúng
44
00:03:22,104 --> 00:03:24,697
Vậy, ta sử dụng toán tử OR
45
00:03:24,697 --> 00:03:27,640
Vậy, toán tử OR trông như thế này: "||"
46
00:03:27,640 --> 00:03:31,628
Ta gọi chúng là ký tự sổ dọc (pipe symbols), và có lẽ bạn chưa bao giờ sử dụng chúng
47
00:03:31,628 --> 00:03:35,763
Bạn phải nhìn nó trên bàn phím, nó thường ở phía trên bên phải
48
00:03:35,763 --> 00:03:39,625
Hy vọng rằng bạn thực sự thấy có nó trên bàn phím.
49
00:03:39,625 --> 00:03:42,724
Ổn rồi? Tuyệt, vậy bây giờ hãy xem nó hoạt động hay không ..
50
00:03:42,724 --> 00:03:46,695
Được rồi, nó hoạt động ở đó, ở đó và sau đó hoạt động ở đó .. đẹp đấy ..
51
00:03:46,695 --> 00:03:49,491
ta có thể tiếp tục thêm nhiều điều kiện ở đây
52
00:03:49,491 --> 00:03:52,601
Như vậy với cả AND và OR, bạn có thể có nhiều thứ như mình muốn
53
00:03:52,601 --> 00:03:55,793
Nếu cần kiểm tra 60 điều kiện khác nhau, ta hoàn toàn có thể làm điều đó, phải không?
54
00:03:55,793 --> 00:03:59,101
Bởi ta chưa quan tâm tới các cạnh nên
55
00:03:59,101 --> 00:04:04,650
giả sử nếu mouseX nhỏ hơn 3
56
00:04:04,650 --> 00:04:09,132
Vậy, đó phải là ... xem nào, cạnh bé xíu nằm ở đó
57
00:04:09,132 --> 00:04:10,736
Rất tốt
58
00:04:10,736 --> 00:04:14,760
Hoặc mouseX lớn hơn 397 (mouseX> 397)
59
00:04:14,760 --> 00:04:17,767
Xem nào .. đẹp quá!
60
00:04:17,767 --> 00:04:21,534
Vậy, ta tiếp tục áp dụng điều đó với tất cả các cạnh
61
00:04:21,534 --> 00:04:27,696
Như vậy, vâng! Với AND (&&) và OR (||) giờ bạn có thể thấy cách ta xây dựng các điều kiện phức tạp hơn nhiều trong các chương trìnhh.
62
00:04:27,696 --> 00:00:00,000
Và điều đó thật tốt, bởi thế giới quả là nơi phức tạp.