Matlab integer format for answer
6 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
How do I get matlab to output the answer of (2+24)/(4*3) as an integer? It keps giving the answer as a decimal
2.166666666666667
0 comentarios
Respuesta aceptada
Image Analyst
el 18 de Feb. de 2013
Try a function, like int32(), fix(), ceil(), floor(), uint8(), int32(round()), etc.
a = (2+24)/(4*3) % Floating point.
aInteger = int32(a)
whos aInteger; % int32
aInteger = round(a)
whos aInteger; % Double
aInteger = floor(a)
whos aInteger; % Double
aInteger = ceil(a)
whos aInteger; % Double
aInteger = fix(a)
whos aInteger; % double
aInteger = uint16(a)
whos aInteger; % uint16
Note that with round(), ceil(), floor(), and fix() you will end up with a double but with no fractional part. If you want an actual integer, you have to cast to an integer data type with int32(), int16(), etc.
0 comentarios
Más respuestas (1)
Thorsten
el 18 de Feb. de 2013
Because the result is not an integer. To convert from decimal to integer, use one of these functions:
round, floor, ceil
1 comentario
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!