python第三次作业
1 平方值格式化
描述
獲得用戶輸入的一個整數N,計算N的平方值;結果采用寬度20字符方式居中輸出,空余字符采用減號(-)填充。
如果結果超過20個字符,則以結果寬度為準。
解析:
a = eval(input())
b = pow(a,2)
if len('b') <= 20:
? print('{:-^20}'.format(b))
else:
? print(b)
2 天天向上的力量
描述?
一年365天,以第1天的能力值為基數,記為1.0。當好好學習時,能力值相比前一天提高N‰;當沒有學習時,由于遺忘等原因能力值相比前一天下降N‰。每天努力或放任,一年下來的能力值相差多少呢?其中,N的取值范圍是1到10,N可以是小數。?
獲得用戶輸入N,計算每天努力和每天放任365天后的能力值及能力間比值,其中,能力值保留小數點后2位,能力間比值輸出整數,輸出結果間采用“逗號+空格”格式。?
此題目是OJ題,使用input(“”)獲得N。
測試用例:?
輸入:?
1?
輸出:?
1.44, 0.69, 2
N=eval(input())
daydayup=pow((1.0+N/1000),365)daydaydown=pow((1.0-N/1000),365)
b = int(daydayup//daydaydown)
print('%.2f,%.2f,%s'%(daydayup,daydaydown,b))
3 ?星號三角形
N = eval(input()) H = int((N+1)/2) #行數 for i in range(H):a = '*' * (2*i+1)print(a.center(N))4 同符號數學運算
描述
讀入一個整數N,分別計算如下內容:
1. N的絕對值;
2. N與10進行同符號加法、減法和乘法運算,同符號運算指使用N的絕對值與另一個數進行運算,運算結果的絕對值被賦予N相同的符號,其中,0的符號是正號。
將上述4項結果在一行輸出,采用空格分隔,輸出結果均為整數。
解析:n = eval(input())
a = abs(n)
b = a + 10
c = a - 10
d = a * 10
if n >= 0:
? print(a,abs(b),abs(c),abs(d))
else:
? print(a,-abs(b),-abs(c),-abs(d))
5 凱撒密碼
描述
凱撒密碼是古羅馬凱撒大帝用來對軍事情報進行加解密的算法,它采用了替換方法對信息中的每一個英文字符循環替換為字母表序列中該字符后面的第三個字符,即,字母表的對應關系如下:
原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z?A B C
對于原文字符P,其密文字符C滿足如下條件:C=(P+3) mod 26
上述是凱撒密碼的加密方法,解密方法反之,即:P=(C-3) mod 26
假設用戶可能使用的輸入僅包含小寫字母a~z和空格,請編寫一個程序,對輸入字符串進行凱撒密碼加密,直接輸出結果,其中空格不用進行加密處理。使用input()獲得輸入。
解析:(借鑒別人解法,有待思考)
p=input() ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#獲取輸入
for i in p: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? # i在輸入中循環
? ? if ord("a")<=ord(i)<=ord("z"): ? ?#用Unicode碼判斷輸入是否為a~z的字母 ?然后加密
? ? ? ? n=ord(i)+3
? ? ? ? if n>ord("z"):
? ? ? ? ? ? n=n-26
? ? ? ? ? ? print(chr(n),end='')
? ? ? ? else:
? ? ? ? ? ? print(chr(n),end='')
? ? else:
? ? ? ? ?print(end = ' ')
總結
以上是生活随笔為你收集整理的python第三次作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python面向对象基础-01
- 下一篇: 华为相机M系列交叉编译32位openss