想了想其他的太简单了,还是不放了,剩三题吧。
一、完美立方
编写一个程序,对任给的正整数N (N≤100),寻找所有的四元组(a, b, c, d),使得a^3= b^3 + c^3 + d^3,其中a,b,c,d 大于 1, 小于等于N。
输入一个正整数N (N≤100),输出 每行输出一个完美立方。输出格式为: Cube = a, Triple = (b,c,d) 其中a,b,c,d所在位置分别用实际求出四元组值代入。
请按照a的值,从小到大依次输出。当两个完美立方 等式中a的值相同,则b值小的优先输出,仍相同则c值小的优先输出,再相同则d值小的先输出。
n = int(input())
cube = [0]
for i in range(2, n+1):
cube.append(i**3)
for a in range(3,n):
for b in range(0,a-2):
if cube[a] < (cube[b] + cube[b+1] + cube[b+2]):
break
for c in range(b+1,a-1):
if cube[a] < (cube[b] + cube[c] + cube[c+1]):
break
for d in range(c+1,a):
if cube[a] == (cube[b] + cube[c] + cube[d]):
print("Cube = %d,Tripe = (%d,%d,%d)" %(a+1,b+1,c+1,d+1))
二、人民币和美元转换
汇率为:1美元=6.78人民币。
输入格式为:USD10,输出格式为:RMB67.8(注意中间没有是空格的)。
str1=input()
import re
num=int(''.join(re.findall('d+',str1)))
if 'RMB' in str1:
print('USD','%.2f' %(num/6.78),sep='')
elif 'USD' in str1:
print('RMB','%.2f' %(num*6.78),sep='')
三、凯撒密码
输入一串字母,将它们都加3,如果超过122(z的ASCII值)就减掉26。
比如 ‘xyz’ 会变成 ‘abc’ 。
original=input()
cipher=''
for i in original:
a=ord(i)
if 97<=a<=119:
cipher+=chr(a+3)
elif 120<=a<=122:
cipher+=chr(a+3-26)
else:
cipher+=i
print(cipher)