Số dấu phẩy động
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 8 trên 109.
Hãy cùng tìm hiểu về số thực trong Go, dùng để lưu các giá trị thập phân.
Trước tiên, hãy khai báo một biến số thực với kiểu dữ liệu rõ ràng:
var price float64 = 19.99
fmt.Println("Price:", price)Sau khi chạy đoạn code này, bạn sẽ thấy nội dung sau trên màn hình:
Price: 19.99Chúng ta đã tạo một biến có thể lưu các số thập phân.
Trong Go, có hai kiểu số thực dấu phẩy động: float32 và float64. Hãy xem cách dùng float32:
var temperature float32 = 23.5
fmt.Println("Temperature:", temperature)Sau khi chạy đoạn code này, bạn sẽ thấy nội dung sau trên màn hình:
Temperature: 23.5Điểm khác biệt giữa float32 và float64 là độ chính xác và phạm vi giá trị. float64 dùng 64 bit và có độ chính xác cao hơn (khoảng 15-17 chữ số thập phân), còn float32 dùng 32 bit với độ chính xác thấp hơn (khoảng 6-9 chữ số thập phân).
Với hầu hết ứng dụng, bạn nên dùng float64 vì kiểu dữ liệu này chính xác hơn.
Bây giờ, hãy dùng cơ chế suy luận kiểu dữ liệu của Go để tạo số thực đơn giản hơn:
temperature := 23.5 // Go tự động dùng float64
fmt.Println("Temperature:", temperature)Sau khi chạy đoạn code này, bạn sẽ thấy nội dung sau trên màn hình:
Temperature: 23.5Khi bạn viết dấu thập phân trong một số, Go tự động xem số đó là kiểu float64.
Hãy thử một vài phép tính cơ bản với số thực:
radius := 5.0
pi := 3.14159
area := pi * radius * radius
fmt.Println("Circle area:", area)Sau khi chạy đoạn code này, bạn sẽ thấy nội dung sau trên màn hình:
Circle area: 78.53975Số dấu phẩy động cho phép chúng ta thực hiện các phép tính với giá trị thập phân.
Thử thách
Người mớiTrong thử thách này, bạn sẽ luyện tập cách làm việc với số dấu phẩy động trong Go.
Số dấu phẩy động dùng để biểu diễn các giá trị thập phân trong Go. Có hai kiểu chính: float32 và float64, trong đó float64 được dùng phổ biến hơn vì có độ chính xác cao hơn.
Nhiệm vụ của bạn là khai báo một biến số dấu phẩy động và in biến đó ra màn hình.
Tự làm thử
package main
import "fmt"
func main() {
// Một vài ví dụ về số thực
pi := 3.14159
temperature := 72.5
// TODO: Khai báo một biến float64 mới tên là 'height' với giá trị 5.9
height := ?
// In ra các biến hiện có
fmt.Println("Pi approximately equals:", pi)
fmt.Println("The temperature is:", temperature)
// TODO: In ra biến 'height' mới cùng thông báo mô tả
fmt.Println("The height is:", ?)
}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
4Toán tử so sánh và logic
Toán tử so sánh, phần 1Toán tử so sánh, phần 2Toán tử AND logicToán tử OR logicToán tử NOT logicCơ bản về thứ tự ưu tiên của toán tửÔn tập: thực hiện phép so sánh7Luồng điều khiển: vòng lặp
Giải thích vòng lặp `for`Vòng lặp `for` cơ bảnVòng lặp `for` chỉ có điều kiệnTừ khóa `break`Từ khóa `continue`Vòng lặp lồng nhauÔn tập: lặp lại hành động2Biến và các kiểu dữ liệu cơ bản
Biến là gìSuy luận kiểu với `:=`Số nguyên (int)Số dấu phẩy độngGiá trị BooleanChuỗiGiá trị 0Hằng sốQuy ước đặt tênÔn tập: biến và kiểu dữ liệu5Đầu vào/đầu ra cơ bản
Đầu ra có định dạngĐộng từ định dạngIn các kiểu dữ liệuNhận đầu vào cơ bản từ người dùngÔn tập: đầu vào và đầu ra8Hàm
Tìm hiểu về hàmKhai báo hàmGọi hàmTham số của hàmTrả về một giá trịTrả về nhiều giá trịGiá trị trả về có tênNhững điều cơ bản về phạm vi của hàmÔn tập: Tạo code có thể tái sử dụng3Toán tử cơ bản
Toán tử số họcToán tử chiaToán tử moduloToán tử gánToán tử gán kết hợpTăng và giảmÔn tập: Tính toán6Luồng điều khiển: câu lệnh điều kiện
Câu lệnh `if`Từ khóa `else`Từ khóa `else if`Biến bị che khuất trong `if`Khởi tạo biếnCâu lệnh `switch``switch` có biểu thức`switch` không có biểu thứcTừ khóa `fallthrough`Ôn tập: đưa ra quyết địnhTự luyện tập: Trình biên dịch Go online