Menu
CoddyTech

Tìm hiểu về hàm

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 51 trên 109.

Hàm (function) là những khối code có thể tái sử dụng để thực hiện các nhiệm vụ cụ thể. Chúng giúp sắp xếp code và tránh lặp lại.

Hãy tạo một hàm (function) đơn giản để cộng hai số:

func add(x int, y int) int {
    return x + y
}

func main() {
    result := add(5, 3)
    fmt.Println("5 + 3 =", result)
}

Sau khi chạy đoạn code này, số 8 sẽ hiển thị trên màn hình, là kết quả của phép cộng 5 và 3:

5 + 3 = 8

Hãy cùng tìm hiểu cách định nghĩa một hàm (function):

Trước tiên, chúng ta khai báo hàm (function) với tên và các tham số:

func add(x int, y int) int {

Câu lệnh này tạo một hàm (function) có tên add, nhận hai tham số số nguyên và trả về một giá trị số nguyên.

Tiếp theo, hãy viết phần thân hàm để thực hiện phép tính:

return x + y

Dòng đơn giản này cộng hai tham số lại với nhau rồi gửi kết quả về nơi gọi hàm.

Bây giờ, hãy xem cách gọi hàm và sử dụng kết quả:

result := add(5, 3)

Dòng này gọi hàm add với các giá trị 5 và 3, rồi lưu giá trị trả về (8) vào một biến mới có tên là result.

Cuối cùng, hãy hiển thị kết quả cho người dùng:

fmt.Println("5 + 3 =", result)

Lệnh này in ra văn bản "5 + 3 =" rồi đến giá trị được lưu trong result, tức là 8.

challenge icon

Thử thách

Người mới

Trong thử thách này, bạn sẽ luyện tập tạo và sử dụng một hàm (function) đơn giản trong Go.

Nhiệm vụ của bạn là hoàn thành hàm greet, hàm này nhận tên làm tham số và trả về lời chào.

Hàm cần trả về một chuỗi theo định dạng: "Hello, " + name + "!"

Hàm cần trả về một chuỗi theo định dạng: "<code>Hello, Gopher!"

Tự làm thử

package main

import "fmt"

// TODO: Hoàn thiện hàm (function) greet nhận tham số (parameter) name
// và trả về chuỗi lời chào theo định dạng: "Hello, " + name + "!"
// Ví dụ: nếu name là "Gopher", trả về chính xác văn bản trong hướng dẫn
func greet(name string) string {
    // Viết code tại đây
    
}

func main() {
    // Kiểm tra hàm với một tên đã định sẵn
    name := "Gopher"
    message := greet(name)
    fmt.Println(message)
    
    // Đầu ra dự kiến: Hello, Gopher!
}
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