【蓝桥杯基础练习】第一天:①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 = [ ]是什么?
答:

  • Python中的中括号[ ]:
    代表list列表数据类型,列表是一种可变序列。创建方法既简单又特别。

  • Python中的小括号():
    代表tuple元组数据类型,元组是一种不可变序列。创建方法很简单,大多数时候都是小括号括起来的。

  • Python中的花括号{}:
    代表dict字典数据类型,字典是Python中唯一内建的映射类型。字典中的值没有特殊的顺序,但都是存储在一个特定的键(key)下。键可以是数字、字符串甚至是元组。

问: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ㄒ)/~~
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bessie_Lee_gogogo

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值