Số

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

The number data đánh máy, or double , represents a double-precision (64-bit) floating-point number. Số có thể từ -1.7 * 10 1> 3081> đến 1.7 * 10 4> 3084> (độ chính xác dương hoặc âm).

Đã ký và chưa ký

Dấu hiệu của số là dương hay âm. Ví dụ, 1 là dương và -1 là âm. Ở Luau, -0 được tương đương với 1> 01> .


print(0 == -0) --> đúng
print(-0 > 1) --> false
print(-0 < 1) --> đúng
print(-0 > -1) --> đúng
print(-0 < -1) --> false

Các lớp số

Luau không phân biệt giữa số thập phân và số thập phân, nhưng tham chiếu API thường phân biệt giữa chúng để cung cấp sự cụ thể hơn về cách sử dụng mỗi API.

float

Loại số float đề cập đến một số thập phân với một địa điểmthập phân. Trong điều khoảnhọc máy tính, chúng là single-precision (32-bit) floating-point number, có độ chính xác không cao hơn số double-precision floating-point , nhưng đủ chính xác cho hầu hết các trường hợ

int

Loại số integer , hoặc int, tham khảo đến một số toàn bộ 32-bit, từ -2 31 đến 2 1>311> -1. Các tính năng và hàm mà mong đợi số nguyên tử có thể tự động tròn hoặc nâng cấp lỗ

int64

Loại số int64 đề cập đến một hệ số số 64-bit đã ký, có gi

Biểu tượng

Các số được viết bằng chữ số có ý nghĩa nhất (lớn nhất) đầu tiên (lớn nhất). Có nhiều cách để viết các chữ số trong Roblox Lua:

  • Decimal (base-10) — Viết các con số của số bằng cách sử dụng một điểm chuẩn bị tùy chọn 0-9, chẳng hạn như 7 , 1.25 hoặc 0> -22.50> .
  • Ký hiệu khoa học — Viết một số thập phân được theo sau bởi e hoặc e+ , sau đó là một số toàn thể để nâng cấp số thập phân lên 10^3 (12.000). Ví ví dụ / trường hợp, 0> 12e30> là 12 ×
  • Hexadecimal (base-16) — Bắt đầu số với 0x được kết hợp bởi các chữ số 0-9 hoặc A-F (đánh dấu chữ viết). Ví dụ, 0xF là 15 và 0> 0x3FC0> là 1020.
  • Binary (base-2) — Bắt đầu số với 0b được theo bởi 0s hoặc 1s, ví dụ 0b1100 (12 trong dạng thập phân).

Hành động

Bạn có thể sử dụng các biểu tượng để thực hiện và so sánh các con số. Bạn cũng có thể sử dụng các hàm toán học như math.sqrt()math.exp() trong thư viện 2> Library.math2>

Loại Introspection

Bạn có thể xác định nếu một giá trị x là một số bằng cách sử dụng type(x) hoặc typeof(x). Cả hai đều trả về dòng chuỗi 1> number1> nếu 4> x4> là một số.


local testInt = 5
local testDecimal = 9.12761656
local testString = "Hello"
print(type(testInt)) --> số
print(type(testDecimal)) --> số
print(type(testString)) --> chuỗi
print(typeof(testInt)) --> số
print(typeof(testDecimal)) --> số
print(typeof(testString)) --> string

Hàm Tròn

Bạn có thể xoay số bằng cách sử dụng math.floor() , math.ceil() hoặc math.modf() . Các hàm này trả kết quả dưới dạng một số nguyên tử nếu Luau có thể biểu diễn nó như một số nguyên tử. Nếu số quá lớn, Luau sẽ

  • Để xác định nếu một số x là một số nguyên tố, hãy sử dụng math.floor(x) == x .
  • Để tròn một số xuống, hãy sử dụng math.floor() .
  • Để tròn một số lên, hãy sử dụng math.ceil() .
  • Để tròn một số lên đến zero, use math.modf() . Nó cũng trả lại sự khác biệt phần thưởng của số tròn làm thành một kết quả thứ hai.

print(math.floor(3.3)) --> 3
print(math.floor(-3.3)) --> -4
print(math.ceil(3.3)) --> 4
print(math.ceil(-3.3)) --> -3
print(math.modf(3.3)) --> 3.0.2999999999999998
print(math.modf(-3.3)) --> -3 -0.2999999999999998