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)
相关推荐
第二只羽毛20 分钟前
C++ 高并发内存池1
大数据·开发语言·c++·开源
不想看见40428 分钟前
C++/Qt 实习岗位深度解析【结合一次研发实习谈感受】
开发语言·c++·qt
智算菩萨32 分钟前
【OpenGL】10 完整游戏开发实战:基于OpenGL的2D/3D游戏框架、物理引擎集成与AI辅助编程指南
人工智能·python·游戏·3d·矩阵·pygame·opengl
sjmaysee1 小时前
Java框架SpringBoot(一)
java·开发语言·spring boot
寒秋花开曾相惜1 小时前
(学习笔记)3.8 指针运算(3.8.3 嵌套的数组& 3.8.4 定长数组)
java·开发语言·笔记·学习·算法
想唱rap1 小时前
Linux线程
java·linux·运维·服务器·开发语言·mysql
Tony Bai1 小时前
Rust 看了流泪,AI 看了沉默:扒开 Go 泛型最让你抓狂的“残疾”类型推断
开发语言·人工智能·后端·golang·rust
njidf1 小时前
C++与Qt图形开发
开发语言·c++·算法
qwehjk20081 小时前
代码动态生成技术
开发语言·c++·算法
是翔仔呐1 小时前
第11章 显示外设驱动:I2C协议OLED屏、SPI协议LCD屏字符/图片/中文显示
c语言·开发语言·stm32·单片机·嵌入式硬件·学习·gitee