其他分享
首页 > 其他分享> > 【蓝桥杯基础练习】第一天:①A+B问题 ②序列求和 ③圆形面积保留7位小数 ④斐波拉契数除以10007求余数

【蓝桥杯基础练习】第一天:①A+B问题 ②序列求和 ③圆形面积保留7位小数 ④斐波拉契数除以10007求余数

作者:互联网

文章目录


前言

真的是,太久没用python做这种题目了,我的天,输入都忘记咋输入了,笑死了
没事慢慢赶起来!!加油


A+B问题

a,b = map(int, input().split())
print(sum([a,b]))

问:为什么不用俩个input呢?
答:因为输入的格式是12 23这种,也就是意味着必须空格输入,用input就会导致换行输入。


序列求和

a = int(input())
b = (a+1)*a//2
print(b)

圆形面积保留7位小数

import math
a = float(input())
area = math.pi * a**2
print('%.7f'%area)
print(format(area,'.7f'))

问:有double型吗?
答:没有的,只有float型代表全部浮点数。

问:为什么会有俩种输出,有区别吗?
答:没有区别,俩种都可以使用。


斐波拉契数除以10007求余数

超时递归:

def f(a):
    if a==1 or a==2:
        return 1
    return f(a-1)+f(a-2)

a = int(input())
print(f(a)%10007)

通过循环

f = []
f.append(1)
f.append(1)

n = int(input())
if n > 2:
    for i in range(2, n):
        f.append((f[i - 1] + f[i - 2]) % 10007)

print(f[n - 1])

问:f = [ ]是什么?
答:

问:range(2,n)是什么意思鸭?
答:遍历2到n之间,步数为1,n为几就遍历几次(n=3,遍历1次)。

问:为什么输出的是f[n-1]呢?
答:以n=3为栗子趴,f列表中是从0开始存储的,range(2,3)的意思是[2,3),不包括3在内的遍历,也就是f(1)+f(0) = 1+1 = 2,所以结果就是2啦 ~


结果

不忍直视 [哭泣] [哭泣] [哭泣] /(ㄒoㄒ)/~~
在这里插入图片描述

标签:契数,10007,int,蓝桥,Python,遍历,print,input
来源: https://blog.csdn.net/weixin_42198265/article/details/122611005