c版本:
#include
unsigned int f2(int n);
//判斷無符號整數d是不是[2的n次冪]的冪,並指出該數[d]是[2的n次冪]的多少(e)次冪
//原理:2的n次冪的冪的二進位制位中有且只有一位是1,且1後面剛好是n個0為一組
int ispowerof2power(unsigned int d, int n, int *e)
else
return 0; //不是2^n的冪
}else if(v == 0)
i -= n;
else
break;
}return 0;
}unsigned int f2(int n) //求2^n-1
void main()
i += 2;}}
java 判斷乙個數是不是2的N次方
第一種方法,對n進行迴圈除以2.public boolean ncf int n if n 2 return b 第二種方法,算2的n次方資料,比較n,小於繼續乘以2.等於的話就是2的n次方。大於的話就不是2的n次方。public boolean ncf2 int n if xx 2 x else ...
判斷乙個數是不是2的整數次冪
用位運算 二進位制數的位權是以2為底的冪,如果乙個整數 m 是 2 的 n 次冪,那麼轉換為二進位制之後只有最高位為 1,其餘位置為 0,再觀察 m 1 轉換為二進位制後的形式以及 m m 1 的結果,例如 2 0000 0010 1 0000 0001 2 1 0000 0010 0000 000...
如何判斷乙個整數是不是奇數 最佳方式
通常判斷乙個整數是否是奇數,大家會這樣來做 public static boolean isodd int i 或者 public static boolean isodd int i 顯然,第一種當 i 是負數時就會出現判斷錯誤。第二種與 0 比較是很明智的選擇。我們選第二種準沒錯。還有一種效率高...