Menu
CoddyTech

Cơ bản về thứ tự ưu tiên của toán tử

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

Thứ tự ưu tiên của toán tử quyết định thứ tự thực hiện các phép toán trong một biểu thức. Phép toán có độ ưu tiên cao hơn được thực hiện trước phép toán có độ ưu tiên thấp hơn.

Tạo một chương trình minh họa thứ tự ưu tiên của các toán tử:

result1 := 5 + 3 * 2
result2 := (5 + 3) * 2
fmt.Println("5 + 3 * 2 =", result1)
fmt.Println("(5 + 3) * 2 =", result2)

Kết quả là:

5 + 3 * 2 = 11
(5 + 3) * 2 = 16

Trong biểu thức thứ nhất, phép nhân (*) có độ ưu tiên cao hơn phép cộng (+), nên 3 * 2 được tính trước. Trong biểu thức thứ hai, dấu ngoặc đơn ghi đè độ ưu tiên mặc định, khiến 5 + 3 được tính trước.

challenge icon

Thử thách

Người mới

Trong thử thách này, bạn sẽ luyện cách hiểu thứ tự ưu tiên của toán tử trong Go. Bạn có một vài biến với các giá trị khác nhau và cần sửa biểu thức trong biến result để nhận được đầu ra mong muốn.

Biểu thức hiện có dấu ngoặc đơn đặt chưa đúng chỗ. Nhiệm vụ của bạn là thêm dấu ngoặc đơn vào đúng vị trí để biểu thức cho kết quả false.

Tự làm thử

package main

import "fmt"

func main() {
	// Các biến này đã được thiết lập sẵn cho bạn
	a := false
	b := true
	c := true
	
	// TODO: Thêm dấu ngoặc vào biểu thức bên dưới để biểu thức có giá trị false
	// HINT: Biểu thức cần có giá trị false
	result := a && b || c
	
	// Đừng sửa dòng bên dưới
	fmt.Println(result)
}
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 Go online