练习5

3 阅读2分钟

题目1:定义一个函数,输入整数n,返回斐波那契数列中的前n个元素。

提示:要求使用递归方法,斐波那契数列--1,1,2,3,5,8,13...

python
 体验AI代码助手
 代码解读
复制代码
def fib(n):
    if n == 1 or n == 2:
        return 1
    else:
        # n > 2
        return fib(n-1) + fib(n-2)
n = int(input("请输入一个整数:"))
res = [fib(i) for i in range(1,n+1)]
print(res)

题目2:题目2:中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱百鸡问题”:一只公鸡值五钱,一只母鸡值三钱,三只小鸡值一钱。

现在要用百钱买百鸡,请问公鸡、母鸡、小鸡各多少只?

python
 体验AI代码助手
 代码解读
复制代码
res = []
for x in range(0,21):  # 公鸡
    for y in range(0,34):   # 母鸡
        z = 100 - x - y  # 小鸡
        if (5*x + 3*y + z/3) ==100 and z % 3 ==0:
            res.append((x,y,z))
print("公鸡、母鸡、小鸡各多少只:",res)

题目3:流行病学通常关注单日治愈患者例数增长(即当日治愈例数减去前日治愈例数),并以单日治愈患者例数最高增长点作为疫情向好发展的标志点。

1.“某国疫情数据.csv”文件是以逗号分隔的2020年1月1日至1月31日某国发生新冠肺炎疫情变化csv数据文件。

python
 体验AI代码助手
 代码解读
复制代码
import pandas as pd
# 读取
df = pd.read_csv(
    "某国疫情数据.csv",
    encoding="gbk",
    index_col=0
)
print(df)

2.请编写程序,找出单日治愈例数增长最高日期,若有并列最高增长日,则选择并列的最后一日。

python
 体验AI代码助手
 代码解读
复制代码
# 计算单日治愈增长
df['治愈增长'] = df['治愈'].diff().fillna(0)
print(df)
# 单日治愈增长最高日期
print("单日治愈增长最高日期:",df['治愈增长'].idxmax())

题目4:

bash
 体验AI代码助手
 代码解读
复制代码
# 题目4:
# 1、读取游客数据文件。
# 2、计算每个月的平均游客数量,并绘制柱状图展示每月平均游客数量的变化趋势。
# 3、统计不同游客来源地区的游客数量占比,并使用饼图展示。
# 4、分析不同年龄区间的游客数量分布情况,绘制直方图展示。
# 5、找出游客数量最多的日期,并计算该日期来自不同地区的游客比例。