Python 编程题 第五节:落体反弹问题、求指定数列之和、求阶乘的和、年龄急转弯、判断回文数、判断星期几、矩阵主对角线元素之和

落体反弹问题

每次落下后弹起高度为之前的一半

python 复制代码
h=100
sum=0
for i in range(0,10):
    if i==0:
        sum+=h
    else:
        sum+=2*h
    h/=2
print(sum,h)

求指定数列之和

a是一个暂时变量来储存之前的down

python 复制代码
sum=0
up=2
down=1
for i in range(20):
    sum+=up/down
    a=down
    down=up
    up=down+a
print(sum)

求阶乘的和

方法一(递归)

python 复制代码
def jiecheng(a):
    if a==1:
        return 1
    else:
        return a*jiecheng(a-1)
sum=0
for i in range(1,21):
    sum+=jiecheng(i)
print(sum)

方法二(factorial函数)

math库里的factorial方法

python 复制代码
import math
sum=0
for i in range(1,21):
    sum+=math.factorial(i)
print(sum)

年龄急转弯

前一个人比后一个人大两岁,知道最后一个人年龄,问第一个人年龄,递归思想,先设置终止条件

python 复制代码
def f(n):
    if n==1:
        return 10
    else:
        return f(n-1)+2
print(f(5))

判断回文数

字符串的倒序输出

python 复制代码
num=str(input())
if num==num[::-1]:
    print("是回文数")
else:
    print("不是回文数")

判断星期几

条件嵌套

python 复制代码
a=input("请输入第一个字母")
if a=="M":
    print("周一")
elif a=="W":
    print("周三")
elif a=="F":
    print("周五")
elif a=="T":
    b=input("请输入第二个字母")
    if b=="u":
        print("周二")
    elif b=="h":
        print("周四")
    else:
        print("输入有误")
elif a=="S":
    c=input("请输入第二个字母")
    if c=="a":
        print("周六")
    elif c=="u":
        print("周日")
    else:
        print("输入有误")
else:
    print("输入有误")

矩阵主对角线元素之和

主对角线元素i==j

python 复制代码
sum=0
n=int(input("请输入矩阵的行数"))
lst=[]
for i in range(n):
    lst.append([])
    for j in range(n):
        lst[i].append(int(input("请输入数据")))
        if i==j:
            sum+=lst[i][j]
print(sum)
相关推荐
一直走下去-明3 分钟前
flask学习1-基础
python·学习·flask
重生之成了二本看我逆天改命走向巅峰30 分钟前
从0搭建Tomcat第二天:深入理解Servlet容器与反射机制
java·开发语言·笔记·学习·servlet·tomcat·idea
rkmhr_sef32 分钟前
Java进阶:Dubbo
java·开发语言·dubbo
数维学长98634 分钟前
【2025rust笔记】超详细,小白,rust基本语法
开发语言·笔记·rust
不止会JS37 分钟前
cursor使用经验分享(java后端服务开发向)
java·开发语言·经验分享·cursor
徐白117738 分钟前
Rust WebAssembly 入门教程
开发语言·rust·wasm
solomonzw1 小时前
C++ 学习(八)(模板,可变参数模板,模板专业化(完整模板专业化,部分模板专业化),类型 Traits,SFINAE(替换失败不是错误),)
c语言·开发语言·c++·学习
韩师学子--小倪1 小时前
ubuntu20 安装python2
python
阳洞洞1 小时前
“nullptr“ should be used to denote the null pointer
开发语言·c++
千益1 小时前
玩转python:python 异常处理从基础到实战
python