0
我正在寫一個凱撒密碼程序,我需要保持我的值在32和126(可打印ascii設置)的範圍內,當它加密自己。所以當它到達126它返回到32如何在ascii 32和ascii 126之間循環ascii python
這裏是代碼
3210我正在寫一個凱撒密碼程序,我需要保持我的值在32和126(可打印ascii設置)的範圍內,當它加密自己。所以當它到達126它返回到32如何在ascii 32和ascii 126之間循環ascii python
這裏是代碼
3210假設你有一個變量v
您要添加a
來,並將它限制在範圍32..126
包容性,這應該這樣做:
v = (v - 32 + a) % (127 - 32) + 32
因此,例如,當添加3〜125:
v = (125 - 32 + 3) % (127 - 32) + 32
= 96 % 95 + 32
= 1 + 32
= 33
更普遍:
def addWithConstraint (loval, hival, val, plus):
return (val - loval + plus) % (hival + 1 - loval) + loval
做然而要注意你所期望的負數一些模運算可能不會做,但你可以確保你總是添加一個正數繞開這個問題。例如,你可以在這個函數像開始插入:
while plus < 0:
plus = plus + hival + 1 - loval
使用模運算符''% – 2013-04-23 07:51:49
還有的[Python的凱撒密碼問題]負載(http://stackoverflow.com/search? q = [python] + caesar)已經在堆棧溢出了。發佈前是否通過它們進行搜索? – 2013-04-23 07:51:56
http://stackoverflow.com/questions/1538935/caesars-cipher-using-python-could-use-a-little-help – Ofiris 2013-04-23 07:52:36