一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下问题、猴子吃桃问题、阶乘(递归)、递归求幂、比赛 对阵、温度的转换、凯撒编码

一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,
求它在第10次落地时,共经过多少米?第10次反弹多高?
b=100
sum=0
for i in range(1,11):
    sum=sum+b+b/2
    b=b/2
print(sum)
print(b)

猴子吃桃问题
b=1
for i in range(1,10):
    b=(b+1)*2
print(b)
阶乘(递归)
def factorial(n):
    if(n==1):
        return 1
    else:
        return n*factorial(n-1)
b=factorial(5)
print(b)
阶乘(不是递归)
i= int(input("input a data:"))
result =1
for j in range(1,i+1):
    result=result*j
print(result)
求幂(不是递归)
def pow(x,n):
    sum=1
    for i in range(1,n+1):
        sum=sum*x
    return sum
a=pow(6,3)
print(a)
递归求幂
def power(x,n):
    if(x==1):
        return 1
    else:

        return x*pow(x,n-1)
b=power(5,2)
print(b)
比赛 对阵
n=['a','b','c']
m=[]
for i in range(3):
    if n[i]!='a' and n[i]!='c':
        m.insert(i,'x')
    elif n[i]!='c':
        m.insert(i,'z')
    else:
        m.insert(i,'y')
print ('a--%s, b--%s, c--%s' %(m[0], m[1], m[2]))

str1=input("input a name")
str2=input("input a country")
print("世界这么大,{}同学想去{}看看".format(str1,str2))
求累加和
data=int(input("input a data:"))
sum=0
for i in range(1,data+1):
    sum=sum+i
print(sum)
求1+2!+3!+...+10!
a=0
b=1
for i in range(1,11):
   b=b*i
   a=a+b
print(b)
温度的转换
c=int(input("请输入一个摄氏温度"))
f=int(input("请输入一个华氏温度"))
c1=(f-32)/1.8
f1=c*1.8+32
print("摄氏温度为{:.2f}".format(c1))
print("华氏温度为{:.2f}".format(f1))
牛逼的方法:
TempStr = input("请输入带有符号的温度值:")
if TempStr[-1] in ['F','f']:
    C = (eval(TempStr[0:-1]) -32) / 1.8
    print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['C','c']:
    F = 1.8 * eval(TempStr[0:-1]) + 32
    print("转换后的温度是{:.2f}F".format(F))
else:
    print("输入的格式错误")
凯撒编码
import math
p=input("请输入明文:")
for i in p:
    if ord("a")<=ord(p)<=ord("z"):
        print(chr(ord("a")+(ord(p)-ord("a")+3)%26))
    else:
        print("error")#chr(x)返回unicode编码的单个字符,ord(x)返回单个字符的unicode编码

你可能感兴趣的:(python)