判斷乙個整數是否是7的倍數

2021-07-25 20:01:24 字數 876 閱讀 2893

判斷乙個數字是不是7的倍數,可以直接求餘:

public

class

checkdivisibilityby7

}

當然也可以一直做減法,看看有沒有機會為0:

public

class checkdivisibilityby7

} else

if (n == 0) else

}return

false;

}public

static

void

main(string args)

}

下面有乙個比較有意思的辦法,我們假設乙個整數n,n可以表示為: n=

10a+b

於是b就是n的個位數字,a是十位(包括十位)以上的數字。等號兩邊乘以2,於是有: 2n

=20a+

2b於是有: 2n

=21a−

a+2b

因為21a無論如何也能被7整除,那麼起決定作用的部分只有−a

+2b 了。判斷是不是7的倍數,跟正負號也沒啥關係,所以我們也可以判斷a−

2b是不是7的倍數也行。

例如371: 37 – (2×1) = 37 – 2 = 35; 3 – (2 × 5) = 3 – 10 = -7,-7就是7的倍數了,所以371也是7的倍數。

public

class checkdivisibilityby7

public

static

void

main(string args)

}

要是這麼算時間複雜度也很小了,也就是整數字數的級別。

判斷乙個整數是否為素數 確定乙個整數是否是2的冪

給定乙個整數,編寫乙個函式來確定它是否是2的冪。範圍 1 2 31 1 測試用例 輸入 16,輸出 true 因為 2 4 16 輸入 18,輸出 false.最明顯的暴力方法就是除以2,然後檢查它是否達到1。var poweroftwo function n 由於給出的範圍在0 2 31 1之間,...

判斷乙個整數是否是回文數

判定乙個正整數是否是乙個回文數。例如12121是回文數,而1231不是回文數。要判斷乙個整數是否是回文數,最自然的想法是把整數轉換成乙個字串,然後根據回文的對稱特性進行判斷。數字轉換為字串可以通過itoa函式實現,判斷字串是否為回文字串 如下 bool ispalindrome string str...

判斷乙個整數是否是回文數。

1 c語言不允許函式巢狀定義。解決辦法就是將函式放到外面定義。2 c語言裡沒有bool型true,false。需要自己定義 define bool int define true 1 define false 0或者使用標頭檔案stdbool.h。判斷乙個整數是否是回文數。include defin...