1.三次方格式化
获得用户输入的一个数字,可能是整数或浮点数,a,计算a的三次方值,并打印输出。
输出结果采用宽度20个字符、居中输出、多余字符采用减号(-)填充。
如果结果超过20个字符,则以结果宽度为准。
#数字化输入字符串
num = eval(input())
#计算三次方
result = num**3
#进行判断
if len(str(result)) > 20:
#长度大于20直接输出
print(result)
else:
#不满20 则居中填充
print(str(result).center(20,'-'))
2.星号三角形
读入一个整数N,N是奇数,输出由星号字符组成的等边三角形,要求:
第1行1个星号,第2行3个星号,第3行5个星号,依次类推,最后一行共N的星号。
num = eval(input())
for i in range(num+1):
if i == 0 :
continue
elif 2*i-1 <= num:
print(((2*i-1)*'*').center(num))
else:
break
3.恺撒密码
恺撒密码是古罗马恺撒大帝用来对军事情报进行加解密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符,即,字母表的对应关系如下:
原文: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
假设用户可能使用的输入包含大小写字母azAZ、空格和特殊符号,请编写一个程序,对输入字符串进行恺撒密码加密,直接输出结果,其中空格不用进行加密处理。使用input()获得输入。
#得到输入的字符串
str = input()
for i in range(len(str)):
#直接进行判断 是否为空格
if str[i] != ' ':
#进行凯撒加密
#判断大小写
if str[i]>='A' and str[i]<='Z':
#先转换为unicode比较大小 再由其unicode转换为字符
c=chr((ord(str[i]) - ord('A')+3)%26+ord('A'))
elif str[i]>='a' and str[i]<='z':
c=chr((ord(str[i]) - ord('a')+3)%26+ord('a'))
else:
c=str[i]
print(c,end="")
#空格直接输出
else:
print(str[i],end="")