竹内纱里奈和大战黑人_欧美成人黄色小视频_91福利影视_欧美在线观看视频网站_h色网站免费观看_97综合

極客小將

您現在的位置是:首頁 » python編程資訊

資訊內容

Python基礎練習實例48(計算絕對值,位運算實際應用)

極客小將2020-11-06-
位操作也可以用來求絕對值,對于負數可以通過對其取反后加1來得到正數。

位操作也可以用來求絕對值,對于負數可以通過對其取反后加1來得到正數。對-6可以這樣:11111010(二進制)–取反->00000101(二進制)-加1->00000110(二進制)來得到6。  

因此先移位來取符號位,inti=a>>31;要注意如果a為正數,i等于0,為負數,i等于-1。然后對i進行判斷——如果i等于0,直接返回。否之,返回~a+1。完整代碼如下:  

i#!/usr/bin/python

# -*- coding: UTF-8 -*-

def intmy_abs(a):

   i = a >> 31

   res = a if i == 0 else ~a + 1

   return res

print(intmy_abs(-11))

現在再分析下。對于任何數,與0異或都會保持不變,與-1即0xFFFFFFFF異或就相當于取反。因此,a與i異或后再減i(因為i為0或-1,所以減i即是要么加0要么加1)也可以得到絕對值。所以可以對上面代碼優化下:  

#!/usr/bin/python

# -*- coding: UTF-8 -*-

def intmy_abs(a):

   i = a >> 31

   return ((a^i)-i);

print(intmy_abs(-11))  

注意這種方法沒用任何判斷表達式,而且有些試題就要求這樣做(^_^講解過后應該是比較好記了)。

本站部分內容轉載自網絡,如有侵權請聯系管理員及時刪除。

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 99国产精品视频免费观看一公开 | 亚洲一区欧美一区 | 黄a视频 | 国产毛片一区 | 成人亚洲区| 不卡av电影在线 | 国产性猛交xxxx免费看久久 | 国产一级片 | 国产精品综合 | 一区二区三区在线播放 | 久久九色| 欧美在线观看一区 | 99亚洲| 国产一区久久久 | 黄色片网战 | 91福利网站 | 欧美一级黄色免费电影 | 国产精品久久久久久久久久久久久 | 亚洲成人高清 | 操人视频免费看 | 国产一区二区三区在线免费观看 | 激情综合在线观看 | 日日日操| 成人高潮aa毛片免费 | 日韩电影在线看 | 精品日产卡一卡二卡麻豆 | 午夜精品久久久久久99热软件 | 午夜视频在线免费观看 | 一区二区高清 | а√在线中文网新版地址在线 | 欧美精品性做久久久久久 | 91精品国产高清 | 国产精品18久久久久久久久 | 国产精品29页 | se69色成人网wwwsex | 亚洲最黄网站 | 一区二区三区在线视频播放 | 99国产精品粉嫩初高生在线播放 | 国产精品日韩欧美一区二区三区 | 天天爽天天插 | 国产视频一区在线观看 |