我正在使用 afor-loop
来确定是否long double
是 int。我设置了 for 循环循环另一个long double
介于 2 和final
^1/2 之间的循环。Final
是我设置的一个循环,基本上是 2 的 2-10 次方减去 1。然后我检查是否final
是整数。我的问题是我怎样才能只得到final
整数值?我的解释可能有点混乱,所以这是我的整个循环代码。顺便说一句,我正在使用长双打,因为我计划在很大程度上增加这些数字。
for (long double ld = 1; ld<10; ld++) {
long double final = powl(2, ld) - 1;
//Would return e.g. 1, 3, 7, 15, 31, 63...etc.
for (long double pD = 2; pD <= powl(final, 0.5); pD++) {
//Create new long double
long double newFinal = final / pD;
//Check if new long double is int
long int intPart = (long int)newFinal;
long double newLong = newFinal - intPart;
if (newLong == 0) {
NSLog(@"Integer");
//Return only the final ints?
}
}
}