Trying to see if a variable is an integer or not

x=2.5;
isaninteger = @(x)isfinite(x)
x=floor(x)
answer=isaninteger(x)
I want the answer here to show that x is not an integer but all it shows is answer = 1. No idea how to fix this
The correct output here would be answer = 0

 Risposta accettata

Try this
%%
x=2.5;
answer = ( x == floor(x) )
answer = logical
0

3 Commenti

Another possibility —
x = 2.5;
answer = rem(x,1)==0
answer = logical
0
answer = mod(x,1)==0
answer = logical
0
Cheers all of these work

Accedi per commentare.

Più risposte (0)

Categorie

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by