Tipos numéricos en MATLAB

La clase numérica en MATLAB incluye enteros con y sin signo, números de punto flotante de precisión simple y números de punto flotante de precisión doble. Generalmente, MATLAB almacena todos los valores numéricos como punto flotante de precisión doble. Pero podemos optar por almacenar cualquier número, o una array de números, como números enteros o, como precisión simple, para una mejor utilización de la memoria. Todos los tipos numéricos permiten operaciones básicas de array, como indexación, etc.

Crear variables numéricas:

Tipo de datos Descripción Tamaño Rango típico
doble      

Precisión doble 

(valores de punto flotante)

8 bytes        +/- 1.7e +/- 308 (~15 dígitos)
único

Precisión simple 

(valores de punto flotante)

4 bytes +/- 3.4e +/- 38 (~7 dígitos)
int8 entero con signo de 8 bits 1 byte -128 a 127
int16 entero con signo de 16 bits 2 bytes -32768 a 32767
int32 entero con signo de 32 bits 4 bytes -2147483648 al 2147483647
int64 entero con signo 8 bytes -(2 63 ) a (2 63 )-1
uint16 Entero sin signo 2 bytes 0 a 65535
uint32 Entero sin signo 4 bytes 0 al 4294967295
uint64 Entero sin signo 8 bytes 0 a 18.446.744.073.709.551.615

Ejemplo 1 :

Matlab

% MATLAB code for Numeric Variables
gfg = single([4.4 3.9 6.9]) .* 8.4
gfg = double([4.4 3.9 6.9]) .* 8.4
gfg = int8([4.4 3.9 6.9]) .* 8.4
gfg = int16([4.4 3.9 6.9]) .* 8.4
gfg = int32([4.4 3.9 6.9]) .* 8.4
gfg = int64([4.4 3.9 6.9]) .* 8.4

Producción:

gfg = 36.960  32.760   57.960
gfg = 36.960  32.760   57.960
gfg = 34  34  59
gfg = 34  34  59
gfg = 34  34  59
gfg = 34  34  59

Conversión de tipos numéricos: 

MATLAB proporciona las siguientes funciones para convertir a varios tipos de datos numéricos:

Tipo de datos Descripción Sintaxis
emitir     Convertir el tipo de datos de una variable a otra
  • B = emitir (A, nueva clase)
  • B = emitir (A, ‘me gusta’, p)
encasillar Convierta el tipo de datos sin cambiar los datos subyacentes
  • Y = encasillado (X, tipo)

Ejemplo 2:

Matlab

% MATLAB code for conversion of Numeric Types
gfg = int8([-5 5]);
b= cast(gfg, "uint8")

Producción:

Ans: b = 0  5

Ejemplo 3:

Matlab

% MATLAB code for conversion of Numeric Types
gfg = int16(-1)
X = typecast(gfg , 'uint16')

Producción:

gfg = -1
X = 65535

Tipo de consulta y valor:

MATLAB proporciona el siguiente tipo de datos para verificar varios valores numéricos:

Tipo de datos Descripción Sintaxis
es entero         Determinar si la entrada es una array de enteros   TF = es un número entero (A) 
es flotar Determinar si la entrada es una array de punto flotante TF = es flotador (A)
isnumeric Determinar si la entrada es una array numérica TF = isnumérico(A)
es real Determinar si la array utiliza almacenamiento complejo TF = esreal(A)
esfinito Determinar qué elementos de la array son finitos TF = isfinito(A)
isinf Determinar qué elementos de la array son infinitos TF = isinf(A)
isnan Determine qué elementos de la array son NaN (no es un número) TF = isnan(A)

Ejemplo 4:

Matlab

% MATLAB code for Query Type and Value
gfg = isinteger(4)
g = isfloat(pi)
fg = isreal(2 + 7i)
x = isfinite(1 ./0)
y = isinf(1./0)
z = isnan(0./0)

Producción:

gfg = 0
g = 1
fg = 0
x = 0
y = 1
z = 1

Límites de valores numéricos:

MATLAB proporciona los siguientes tipos para verificar los límites del valor numérico:

Escribe       Descripción  Sintaxis
eps Precisión relativa de coma flotante
  • d = eps
  • d = eps(x)
  • d = eps (tipo de datos)
flintmax

Entero consecutivo más grande 

en formato de coma flotante

  • f = pedernalmax
  • f = flintmax (precisión)
información Crear array de todos los valores de Inf
  • X = Inf.
  • X = Inf(n)
  • X = Inf(sz1,…,szN)
  • X = Inf(sz)
  • X = Inf(___,nombretipo)
  • X = Inf(___,’me gusta’,p)
intmax Valor más grande de tipo entero específico
  • v = intmáx
  • v = intmax(tipo)
intmin Valor más pequeño del tipo entero especificado
  • v = minint
  • v = intmin(‘nombre de clase’)
Yaya Crear una array de todos los valores No es un número
  • X = NaN
  • X = NaN(n)
  • X = NaN(sz1,…,szN)
  • X = NaN(sz)
  • X =NaN(___,nombretipo)
  • X = NaN(___,’me gusta’,p)
realmax Número de punto flotante positivo más grande
  • f = realmax
  • f = realmax(precisión)
realmin     Número de punto flotante normalizado más pequeño
  • f = reino
  • f = realmin(precisión)

Ejemplo 5:

Matlab

% MATLAB code for Numeric Value Limits
gfg = flintmax
gfg = intmax
gfg = Inf
gfg = intmin
gfg =NaN
gfg = realmax

Producción:

gfg = 9.0072e+15
gfg = 2147483647
gfg = Inf
gfg = -2147483648
gfg = NaN
gfg = 1.7977e+308

Publicación traducida automáticamente

Artículo escrito por rajzzz y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *