Menu
CoddyTech

Toán tử logic phần 2

Thuộc phần Kiến thức nền tảng trong hành trình Ruby của Coddy. Bài học 17 trên 88.

Toán tử ! (gọi là "not") đảo giá trị boolean thành giá trị ngược lại. Nếu một giá trị là true, áp dụng ! sẽ biến nó thành false, và ngược lại:

logged_in = true
!logged_in  # false

is_empty = false
!is_empty   # true

Toán tử này đặc biệt hữu ích khi bạn muốn kiểm tra một điều gì đó KHÔNG đúng. Ví dụ, thay vì kiểm tra xem người dùng đã đăng xuất hay chưa, bạn có thể kiểm tra xem họ có "chưa đăng nhập" hay không:

has_permission = false
!has_permission  # true (họ KHÔNG có quyền)

Bạn cũng có thể kết hợp ! với các biểu thức so sánh bằng cách đặt biểu thức trong dấu ngoặc đơn:

age = 15
!(age >= 18)  # true (age KHÔNG từ 18 tuổi trở lên)

Toán tử ! thường được dùng để đảo ngược điều kiện hoặc kiểm tra xem một thứ gì đó có vắng mặt hay không, giúp logic dễ đọc hơn khi bạn cần thể hiện các điều kiện phủ định.

challenge icon

Thử thách

Dễ

Bạn được cung cấp các biến sau:

is_raining = true
has_ticket = false
is_member = true
age = 16
balance = 0

Dùng toán tử ! (phủ định) để đánh giá và hiển thị từng biểu thức sau trên một dòng riêng:

  1. Giá trị ngược lại của is_raining
  2. Giá trị ngược lại của has_ticket
  3. Giá trị ngược lại của is_member
  4. Kiểm tra xem age KHÔNG lớn hơn hoặc bằng 18 (dùng ! với dấu ngoặc đơn)
  5. Kiểm tra xem balance KHÔNG bằng 0 (dùng ! với dấu ngoặc đơn)

Mỗi kết quả đầu ra phải là true hoặc false.

Tự làm thử

# Các biến đã được định nghĩa sẵn cho bạn
is_raining = true
has_ticket = false
is_member = true
age = 16
balance = 0

# TODO: Dùng toán tử (operator) ! (not) để đánh giá và in ra từng biểu thức (expression)
# 1. Giá trị ngược lại của is_raining

# 2. Giá trị ngược lại của has_ticket

# 3. Giá trị ngược lại của is_member

# 4. Kiểm tra xem age có KHÔNG lớn hơn hoặc bằng 18 hay không

# 5. Kiểm tra xem balance có KHÔNG bằng 0 hay không
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch Ruby online