Red de conocimiento informático - Problemas con los teléfonos móviles - Programación Lua: Numérica

Programación Lua: Numérica

En Lua 5.2 y versiones anteriores, todos los valores numéricos se representan en formato de punto flotante de doble precisión. A partir de la versión 5.3, los valores del lenguaje Lua se dividen en tipos enteros de 64 bits (llamados enteros) y tipos de punto flotante de doble precisión (llamados flotantes). Si necesita enteros de 32 bits y tipos de punto flotante de precisión simple, puede compilar Lua 5.3 en modo Small Lua.

La salida se puede formatear usando el parámetro a de la siguiente manera:

Este formato es difícil de leer, pero conserva la precisión de todos los tipos de punto flotante y es más eficiente que la conversión decimal. Rápido

// Distingue entre tipos de punto entero y punto flotante. Como no existía el concepto de números enteros antes de la versión 5.3, math.floor siempre devolverá un número entero y // siempre que haya un número de punto flotante en el operando, se redondeará hacia abajo para devolver un número de punto flotante

Definición de módulo:

De esto podemos ver que el módulo es similar al resto, cuando desea que un valor esté dentro de un rango determinado, puede modular el valor. En el caso de números enteros, la modulación de ab siempre devuelve el valor entre

Seis operaciones relacionales en lenguaje Lua

La biblioteca matemática estándar math incluye funciones trigonométricas (sen, cos, tan, asin, etc.), funciones exponenciales, funciones enteras, funciones máximas y mínimas max y min, aleatorias y constantes pi y enorme (max puede representar valores numéricos e inf en la mayoría de las plataformas)

math.random

math.randomseed se usa para establecer la semilla del generador de números pseudoaleatorios, vea el ejemplo

Si math.randomseed se establece en el mismo valor cada vez, entonces si math.randomseed se establece en el mismo valor cada vez, entonces si math. aleatorio requiere parámetros o no, todo generará el mismo número aleatorio.

Tres funciones de redondeo:

piso redondea a infinito negativo;

techo redondea a infinito positivo;

modf redondea a 0, y devuelve la parte decimal como segundo resultado;

El problema no está claro si desea redondear el valor x al entero más cercano

Constantes en la biblioteca matemática Se define de la siguiente manera : el valor máximo de un valor entero es math.maxinteger y el valor mínimo math.mininteger

¿No entiendo bien esto?

De entero a flotante

De flotante a entero

Puedes aprovechar la función math.toteger para determinar si un valor es un número entero

De arriba a abajo, la prioridad es de mayor a menor

Entre los operadores binarios, excepto el operador de potencia y el operador de unión, que son operadores de yugo derecho, todos los demás operadores son operadores de yugo izquierdo

Los operadores binarios de Lua math.toteger y math.toteger son operadores de yugo izquierdo.

El entero más grande admitido por Lua 5.3 es 2^63, y el entero más grande admitido por Lua 5.2 es 2^53. Dado que no hay números enteros en las versiones 5.2 y posteriores, no se admiten funciones relacionadas con números enteros como math.type(), math.maxinteger, math.mininteger, math.toteger, etc.

El entero más grande admitido por Lua 5.3 es 2^63, y el entero más grande admitido por Lua 5.2 es 2^53. puntero, etc.