Matlab integer format for answer
9 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commenti
Risposta accettata
Image Analyst
il 18 Feb 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 Commenti
Più risposte (1)
Thorsten
il 18 Feb 2013
Because the result is not an integer. To convert from decimal to integer, use one of these functions:
round, floor, ceil
1 Commento
Vedere anche
Categorie
Scopri di più su Logical in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!