Liczby

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

wpisywaćdanych liczba lub double представляет sobie podwójną dokładność (64-bit) punktu float. Liczby mogą być zakresy od -1.7 * 10 1>3081> do 1.7 * 10 4>3084> (około 15 znaków dokładności, po

Podpisany i Niepodpisany

Znak numeru wskazuje, czy jest pozytywny czy ujemny. Na przykład, 1 jest pozytywny, a -1 jest ujemny. W Luau znak -0 jest równoznaczny z 1>01>.


print(0 == -0) --> prawdziwy
print(-0 > 1) --> fałszywy
print(-0 < 1) --> prawdziwy
print(-0 > -1) --> prawdziwy
print(-0 < -1) --> false

Klasy liczbowe

Luau nie rozróżnia integerów i liczb, ale referencja API czasami rozróżnia je, aby być bardziej sprecyzyjnym w tym, jak używać każdej API.

pływ

Typ liczby float odnosi się do rzeczywistego liczby z dziesiętnym miejscem po przecinku. W warunkikomputerowych są to jednostki pływające z dziesięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdzies

int

wpisywaćliczby integer lub int odnosi się do 32-bitowego całkowitego liczby, które zakresuje od -2 31 do 2 1>311> - 1. Właściwości i funkcje, które oczekują całych liczb, mogą automatycznie zaokrąglić lub podnieść błędy, gdy przypisujesz lub przekazujesz niecałkowite licz

int64

Typ liczby int64 odnosi się do podpisanego 64-bitowego liczby, która zaczyna się od -2 63

Notacja

Liczby są notowane od najważniejszych znaków (wielkoprzedaż). Istnieje wiele sposobów na notowanie liczb w Roblox Lua:

  • Dziesiętny (podstawa-10) — Napisz liczby z liczb normalnie używając cyfr 0–9 z jednym opcjonalnym dziesiętnym punktem, na przykład 7 , 1.25 lub 0> -22.50> .
  • Naukowa notacja zapisu — Napisz dziesięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesiąt dziewięćdziesią
  • Hexadecimal (base-16) — Rozpocznij liczbę od 0x i następnie dodaj cyfry 0–9 lub A–F (kapitalizacja ignorowana). Na przykład, 0xF to 15 i 0> 0x3FC0> to 1020.
  • Binarny (baza-2) — Rozpocznij liczbę od 0b , której następuje 0 lub 1, na przykład 0b1100 (12 w formie dziesiętnej).

Operacje

Możesz używać logicznych i związanych operatorów do manipulacji i porównywania liczb. Możesz również używać funkcji matematycznych, takich jak math.sqrt() i math.exp() w bibliotece 2>Library.math2> i operacjach bitowych w bibliotece 5>Library.bit325>.

Typ Intrygujące

Możesz określić, czy wartość x jest liczbą, używając type(x) lub typeof(x). Obie zwracają strumień 1> number1> , jeśli 4> x4> jest liczbą.


local testInt = 5
local testDecimal = 9.12761656
local testString = "Hello"
print(type(testInt)) --> liczba
print(type(testDecimal)) --> liczba
print(type(testString)) --> ciąg
print(typeof(testInt)) --> liczba
print(typeof(testDecimal)) --> liczba
print(typeof(testString)) --> string

Funkcje zaokrąglania

Możesz zaokrąglić liczby używając math.floor() , math.ceil() lub math.modf(). Te funkcje zwracają wynik liczby jako całkowity, jeśli Luau może go przedstawić jako całkowity. Jeśli liczba jest zbyt duża, Luau zwraca ją jako float.

  • Aby określić, czy liczba x jest liczbą całkowitą, użyj math.floor(x) == x .
  • Aby zaokrącić liczbę w dół, użyj math.floor() .
  • Aby zaokrąglić liczbę, użyj math.ceil() .
  • Aby zaokrącić liczbę w kierunku zero, użyj math.modf() . Powoduje to również różnicę w liczbie dziesiętnej zaokrąglonej liczby jako drugiego wyniku.

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