Menu
CoddyTech

If - else lồng nhau

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

Câu lệnh if có thể nằm bên trong một khối lệnh if hoặc else khác. Đây là câu lệnh if lồng nhau. Bắt đầu với câu lệnh if/else đơn giản:

var age := 15
var group := ""
if age >= 18:
	group = "Adult"
else:
	group = "Minor"

Bây giờ, hãy chia nhóm trẻ vị thành niên thành hai bằng cách lồng if/else bên trong khối else:

var age := 15
var group := ""
if age >= 18:
	group = "Adult"
else:
	if age >= 13:
		group = "Teenager"
	else:
		group = "Child"

15 không lớn hơn hoặc bằng 18, nên else bên ngoài chạy. Bên trong, 15 >= 13 là true, nên group chứa "Teenager".

Một câu lệnh if lồng nhau cũng có thể nằm bên trong khối lệnh if:

var age := 25
var can_rent_car := false
if age >= 18:
	if age >= 21:
		can_rent_car = true

if bên trong chỉ chạy khi khối bên ngoài chứa nó chạy. Mỗi cấp lồng nhau thêm một tab.

challenge icon

Thử thách

Dễ

Xác định những bộ phim mà người xem có thể xem. Các biến age và with_parent đã được đọc cho bạn ở hai dòng đầu tiên (đừng thay đổi chúng).

Dùng câu lệnh if/else lồng nhau để gán giá trị cho message:

  • Nếu age từ 18 trở lên: "You can watch any movie"
  • Nếu không, nếu with_parent là true: "You can watch PG-13 movies"
  • Nếu không: "You can only watch G-rated movies"

with_parent có kiểu bool, vì vậy hãy kiểm tra trực tiếp: if with_parent:. Hãy viết đủ cả ba trường hợp: các bài kiểm tra sẽ thử những độ tuổi khác nhau, có và không có cha mẹ đi cùng. Ví dụ, với độ tuổi 17 và có cha mẹ đi cùng, đầu ra là:

You can watch PG-13 movies

Tự làm thử

extends Node

func _ready():
	var age := int(OS.read_string_from_stdin()) # Đừng thay đổi dòng này
	var with_parent := OS.read_string_from_stdin() == "true" # Đừng thay đổi dòng này
	var message := ""
	# Viết code if-else lồng nhau bên dưới

	# Đừng thay đổi dòng bên dưới
	print(message)
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 GDScript online