第一周Python语法基础

第一周

Python基础语法

例题1 空气污染问题
输入PM2.5指数,根据指数值输出空气质量等级。
在这里插入图片描述
对于初学者 笔记:
1.input输入是字符串类型,字符串常量一般可用单引号或双引号
输入数据需要运算时,需要先进行类型转换
2.eval()除去字符串的引号标识
3.分支条件优化条件避免条件重复,无效信息处理

import sys
import codecs
sys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach())
# pm表示PM2.5指数
pm = eval(input("请输入PM2.5指数"))

# 判断等级
# 数据范围在0-500,所以无效数据大于500或者小于0
if pm >= 500:
    print('无效数据,请重新输入!')
elif pm >= 250:
    print('严重污染')
elif pm >= 150:
    print('重度污染')
elif pm >= 115:
    print('中度污染')
elif pm >= 75:
    print('轻度污染')
elif pm >= 35:
    print('良')
elif pm >= 0:
    print('优')
# 无效信息处理
else:
    print('无效数据,请重新输入!')

例题2 五猴分桃问题
1979年,李政道博士给中国科技大学少年班出过一道知趣题:5只猴子分一堆桃子,怎么也分不成5等分,只好先去睡觉,准备第二天分。夜里1只猴子偷偷爬起来,先吃掉一个桃子,然后将其分为5等份,藏起自己的一份就去睡觉了;第二只猴子又爬起来,吃掉一个桃子后,也将桃子分成5等份,藏起自己的一份睡觉去了;以后的3只猴子都先后照此办理。
问最初至少有多少个桃子?

算法分析:当剩下桃子0个,最后一只猴子拿走数量为0个,桃子数量最少

# 定义time为次数,take为拿走桃子数量,sum为桃子剩下数量
time=0
take=1
sum=0
# 通过循环求桃子数量
while time < 5:
  # 上次剩下桃子数量
  sum = 4 * take
  for time in range(0,5):
    # 判断是否整除
    if sum % 4 != 0 :
      break
    else:
      time+=1
    # 通过关系求上次桃子总量
    sum=sum/4*5+1
  take+=1
# 输出桃子最少总数
print('%d'%sum)

例题3 素数问题
求1000以内的素数和,要求用函数实现素数的判断

算法分析:使用一个函数判断是否为素数,再通过循环判断,调用函数求和

# 笔记:
# 1.def用于定义函数
# 2.sushu(n)函数用于判断是否为素数

# 定义函数sushu用于判断是否为素数
def sushu(n):
    # 从2开始循环判断
    for j in range(2, n):
        # 取余判断是否为合数
        if i % j == 0:
            return False
    return True
# sum表示素数和
# sum由于从3开始判断
sum =2
# 偶数除了2,其他全部不是素数,所以优化循环
for i in range(3, 1000,2):
    # 调用素数函数
    if sushu(i):
        sum += i
print('%d' % sum)
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值