您好,登錄后才能下訂單哦!
JavaScript中如何判斷數(shù)字是奇數(shù)還是偶數(shù),很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
奇數(shù)和偶數(shù)的判斷是數(shù)學運算中經(jīng)常碰到的問題,比如:有變量x,如果x=1則為奇數(shù),為2則為偶數(shù)。這篇文章主要講解通過JavaScript來實現(xiàn)奇偶數(shù)的判斷。
奇數(shù)和偶數(shù)的判斷方法一、求余%
if...else的形式:
if(x%2==0){
//偶數(shù)
}else{
//奇數(shù)
}
三元運算的形式:
(x%2==0)?"偶數(shù)":"奇數(shù)"
分析:
根據(jù)奇數(shù)偶數(shù)的定義,若整數(shù)除以2沒有余數(shù),則為偶數(shù),否則為奇數(shù)。因此,偶數(shù)取余結果為0,奇數(shù)取余結果為非零在if(條件)判斷中,若條件為非零,表示條件成立,否則表示條件不成立(即不執(zhí)行if()之后的語句)?:的情況類似
奇數(shù)和偶數(shù)的判斷方法二、&1
if...else的形式:
if(x&1==0){
//偶數(shù)
}else{
//奇數(shù)
}
三元運算的形式:
(x&2==0)?"偶數(shù)":"奇數(shù)"
分析:
首先得知道按位與運算&的使用方法,按位與運算:a&b。參與運算的兩數(shù)各對應的二進位相與,只有對應的兩個二進位均為1時,結果位才為1,否則為0。參與運算的數(shù)以補碼方式出現(xiàn)。
例如:9&5可寫算式如下:先分別將兩個數(shù)化為二進制,在進行運算
00001001(9的二進制補碼)
&00000101(5的二進制補碼)
00000001(1的二進制補碼)
可見9&5=1。
對于任何一個數(shù)&1,因為1的二進制是1,在它的補碼中,除了最后一位為1,其它全部為0,前面提到,按位與運算&只有當兩個數(shù)都為1時結果才是1,因此,任何一個數(shù)與1相與,只有最低位可能為1,因此最終的結果只有0和1兩種情況,而且結果取決于另外那個數(shù)二進制中的最后一位(若為1,最終結果便為1,若為0,結果便是0)
總之,奇數(shù)和偶數(shù)的判斷從二進制化為十進制中,需要加上二進制中最低位乘以2的零次方(1*2^0或0*2^0),然后再加上對應位乘以2^1,2^2,2^3,2^4……但是之后這一些都數(shù)2的倍數(shù),也就是都是偶數(shù),要讓這些偶數(shù)編程奇數(shù),取決于2^0這一項,即,一個十進制數(shù)字是奇數(shù)還是偶數(shù),取決于二進制中最低位那個數(shù)是0還是1。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。