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)
相关推荐
黑马程序员毕设4 分钟前
基于 Java 的餐饮点餐系统设计与应用报告
java·开发语言
1-1=02 小时前
C# 委托与事件
开发语言·c#
Fuyo_11192 小时前
C++ 运行时多态与虚函数机制全面剖析【面试重点】
开发语言·c++·面试
武天旭2 小时前
AI安全--AI大模型的毒性偏见与安全对齐实践
人工智能·python·深度学习
w_zero_one3 小时前
递归算法(一)
java·开发语言·算法
视觉小萌新3 小时前
AI Class 3 · Chapter 2-3:函数、异常、文件读写+JSON / JSONL 读写(小白版)
人工智能·python·json
Julien20044 小时前
管理机密(一)
运维·服务器·开发语言·学习方法
Chen_harmony4 小时前
七、STL与string类
开发语言·c++
沐晓时光4 小时前
C语言入门,字符串和字符串函数知识讲解
c语言·开发语言
小小张说故事4 小时前
Python 的 obj.x 到底按什么顺序找?拆开数据描述符、实例字典和 __getattr__ 那条优先级链
python