如何在C++項(xiàng)目中實(shí)現(xiàn)一個(gè)取余運(yùn)算?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)襄垣,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220C++中整數(shù)除法和取余用的是truncate除法(舍0取整),而給無符號(hào)類型賦值超出表示范圍時(shí)候用無符號(hào)類型等于賦值對(duì)無符號(hào)類型可以表示的數(shù)值總數(shù)取余,智力的取余是基于floor除法的(向下取整)。
在整數(shù)除法中,Java/C 等語言用的是 truncate 除法,Python 用的是 floor 除法。
向零取整。向 0 方向取最接近精確值的整數(shù),換言之就是舍去小數(shù)部分,因此又稱截?cái)嗳≌═runcate)??梢赃@樣理解,先用浮點(diǎn)數(shù)除法進(jìn)行計(jì)算,計(jì)算結(jié)果直接舍去小數(shù)部分。
如:
5/-2=-2.5,所以整數(shù)除法中5/(-2)=-2
-5/2=-2.5,所以整數(shù)除法中-5/2=-2
-5/-2=2.5,所以整數(shù)除法中-5/-2=2
5/2=2.5,所以整數(shù)除法中5/2=0
有上述除法,我們已知a/b=c,而取余操作時(shí)a%b=d
那么d的求解方法如下:
d=a-(bc) 5%2=5-(22)=1 (-5)%(-2)=(-5)-((-2)2)=-1 5%(-2)=5-((-2)(-2))=1 (-5)%2=(-5)-(2*(-2))=-1
最后兩個(gè)式子尤其值得注意
理解起來就是向下取整
5/-2=-2.5,所以floor除法中5/(-2)=-3
-5/2=-2.5,所以floor除法中-5/2=-3
-5/-2=2.5,所以floor除法中-5/-2=2
5/2=2.5,所以floor除法中5/2=2
如我們給定unsigned char a;取值范圍為0-255共256個(gè)數(shù)值,則
a = 5 輸出為5 理解為 5-0256
a=257 輸出為1 理解為 257-1256
a=-5 輸出為251 理解為-5 - (-1256)
a=-257 輸出為255 理解為 -257 - (-2256)
看完上述內(nèi)容,你們掌握如何在C++項(xiàng)目中實(shí)現(xiàn)一個(gè)取余運(yùn)算的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
文章名稱:如何在C++項(xiàng)目中實(shí)現(xiàn)一個(gè)取余運(yùn)算-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://aaarwkj.com/article18/codigp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、定制開發(fā)、微信小程序、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站排名、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容