Đây là một đánh giá về những gì chúng tôi trình bày trong hướng dẫn này về logic và nếu các câu lệnh.
Chúng tôi thường muốn có thể "có điều kiện" làm mọi thứ trong các chương trình của mình - chúng tôi muốn có thể nói "nếu điều này là đúng, thì hãy làm X nhưng nếu điều này là đúng, thì hãy làm Y." Giống như khi chúng ta thức dậy vào buổi sáng - "nếu trời mưa, thì tôi lấy một chiếc ô, nhưng nếu trời nắng, tôi đeo kính râm." Chúng ta có thể thực hiện mọi thứ một cách có điều kiện trong các chương trình của mình bằng cách sử dụng các câu lệnh if và câu lệnh if / other kết hợp với các biểu thức điều kiện .
Một câu lệnh if cho chương trình thực thi một khối mã, nếu một điều kiện là đúng. Trong mã bên dưới, chúng tôi chỉ xuất ra một thông báo nếu
xlớn hơn 0:var x = 5;
if (x > 0) {
text('x is a positive number!', 200, 200);
}
Vì x là 5, lớn hơn 0, chúng ta sẽ thấy thông báo trên khung vẽ. Nếu chúng tôi thay đổi x thành -1, chúng tôi sẽ không thấy thông báo hiển thị, vì x sẽ không lớn hơn 0.
Đây
x > 0là cái mà chúng ta gọi là biểu thức có điều kiện - có nghĩa là biểu thức ước lượng truehoặc false. Khi một giá trị là truehoặc false, chúng ta gọi nó là giá trị boolean (trái ngược với một số hoặc một chuỗi). Ví dụ: chúng ta chỉ có thể hiển thị biểu thức điều kiện:text(x > 0, 200, 200); // Displays "true"
Chúng ta cũng có thể lưu nó vào một biến và sau đó hiển thị nó:
var isPositive = x > 0;
text(isPositive, 200, 200);
Sau đó, chúng tôi sẽ nói rằng
isPositiveđang lưu trữ một giá trị boolean, bởi vì nó truehoặc false, tùy thuộc vào những gì chúng tôi đặt x thành.
Chúng tôi có nhiều cách tạo biểu thức điều kiện sẽ đánh giá
truehoặc false, bởi vì chúng tôi có nhiều toán tử so sánh. Dưới đây là phổ biến nhất:
Giả sử biến sau đây, đây là các toán tử so sánh phổ biến nhất và các biểu thức sẽ đúng với chúng:
var myAge = 28;
| Nhà điều hành | Ý nghĩa | Thành ngữ | |
|---|---|---|---|
| === | Bình đẳng nghiêm ngặt | myAge === 28 | |
| ! == | Bất bình đẳng nghiêm ngặt | myAge !== 29 | 28 !== 29 |
| > | Lớn hơn | myAge > 25 | 28 > 25 |
| > = | Lớn hơn hoặc bằng | myAge >= 28 | 28 >= 28 |
| < | Ít hơn | myAge < 30 | 28 < 30 |
| <= | Nhỏ hơn hoặc bằng | myAge <= 28 | 28 <= 28 |
Đó là một lỗi rất phổ biến khi nhầm lẫn toán tử gán (
=) với toán tử đẳng thức ( ===), vì cả hai đều sử dụng các dấu bằng nhau, nhưng chúng khá khác nhau. Toán tử gán sẽ thực sự thay đổi giá trị của biến, trong khi đó toán tử đẳng thức sẽ chỉ đọc giá trị của biến và xem liệu nó có bằng giá trị nào không. Ví dụ:var x = 2 + 2; // Sets it equal to 4
if (x === 4) { // Asks the question, "does this equal 4?"
text("yep, 2 + 2 = 4!", 200, 200);
}
Đôi khi chúng ta muốn kết hợp nhiều so sánh với nhau trong một biểu thức có điều kiện và đó là lý do tại sao chúng ta có các toán tử logic . Các toán tử này cho phép chúng tôi nói những điều như "nếu cả X và Y là đúng" hoặc "nếu X hoặc Y là đúng" trong các chương trình của chúng tôi.
Nếu chúng ta muốn yêu cầu hai điều kiện đều đúng, chúng ta có thể sử dụng
&&toán tử ("và"):var degreesOutside = 70;
var numberOfClouds = 50;
if (degreesOutside > 70 && numberOfClouds < 5) {
text("Wear sun screen!", 200, 200);
}
Chúng tôi thường sử dụng điều đó trong các chương trình của chúng tôi ở đây để kiểm tra xem vị trí chuột của người dùng có nằm trong hình chữ nhật (để bắt chước một nút), trong trường hợp đó chúng tôi cần nhiều
&&toán tử:rect(100, 50, 100, 100);
mousePressed = function() {
if (mouseX > 100 && mouseX < 200 && mouseY > 50 && mouseY < 150) {
text("You pressed it!", 80, 75);
}
};
Nếu chúng ta chỉ quan tâm rằng ít nhất một điều kiện là đúng, thì chúng ta có thể sử dụng
||toán tử ("hoặc"):var degreesOutside = 70;
var numberOfClouds = 50;
if (degreesOutside > 70 || numberOfClouds < 5) {
text("Wear sun screen if it's hot outside or there aren't many clouds!", 200, 200);
}
Chúng ta có thể sử dụng cả hai
&&và ||trong cùng một biểu thức, nếu chúng ta có một số điều kiện rất phức tạp để kiểm tra. Chỉ cần sử dụng dấu ngoặc đơn để biểu thức nhóm, để chương trình không bị nhầm lẫn về thứ tự nào để đánh giá chúng:var myAge = 28;
if ((myAge >= 0 && myAge < 3) || myAge > 90) {
println('You\'re not quite in your peak.');
}
Bây giờ chúng ta hãy quay trở lại if statement . Chúng ta thường muốn thực thi một số khối mã trong trường hợp điều kiện if không đúng - trong trường hợp đó, chúng ta thêm một câu lệnh khác .
var age = 28;
if (age > 16) {
println('Yay, you can drive!');
} else {
println('Sorry, but you have ' + (16 - age) + ' years until you can drive.');
}
Đôi khi chúng tôi muốn kiểm tra nhiều điều kiện và thực hiện những điều khác nhau dựa trên từng điều kiện, trong trường hợp đó chúng tôi có thể sử dụng
else if:var age = 20;
if (age >= 35) {
println('You can vote AND hold any place in government!');
} else if (age >= 30) {
println('You can vote AND run for the Senate!');
} else if (age >= 18) {
println('You can vote!');
} else {
println('You have no voice in government!');
}
Bạn có thể tiếp tục kiểm tra các điều kiện nhiều như bạn muốn - chỉ cần đảm bảo rằng mỗi điều kiện của bạn thực sự có thể truy cập được. Kiểm tra mã của bạn bằng cách thay đổi các biến cho đến khi bạn đặt mã bên trong mỗi khối mã, để bạn biết tất cả đều hoạt động.
Như bạn có thể hy vọng bây giờ, điều kiện là một phần quan trọng của lập trình và chúng ta hãy tạo ra các chương trình mạnh mẽ và linh hoạt hơn nhiều.
Nhận xét
Đăng nhận xét