Objective-C - float checking for nan
Nothing is equal to NaN
— including NaN
itself. So check x != x
.
if(isnan(slope)) {
yourtextfield.text = @"";
//so textfield value will be empty string if floatvalue is nan
}
else
{
yourtextfield.text = [NSString stringWithFormat:@"%.1f",slope];
}
Hope this will work for you.
Two ways, which are more or less equivalent:
if (slope != slope) {
// handle nan here
}
Or
#include <math.h>
...
if (isnan(slope)) {
// handle nan here
}
(man isnan
will give you more information, or you can read all about it in the C standard)
Alternatively, you could detect that the denominator is zero before you do the divide (or use atan2
if you're just going to end up using atan
on the slope instead of doing some other computation).